React 에서 Chart.js 관련 차트 구현

Front-End/React 2025. 4. 1. 10:18

1. React 프로젝트있는 경로에서 아래 npm 명령어로 차트 관련 라이브러리 설치

 

npm install chart.js react-chartjs-2

 

2. 차트를 생성하기 위해서, 아래 코드처럼 예시 작성

import React from "react";
import { Bar } from "react-chartjs-2";
import { Chart as ChartJS, CategoryScale, LinearScale, BarElement, Title, Tooltip, Legend } from "chart.js";
// Chart.js에 필요한 컴포넌트 등록
ChartJS.register(CategoryScale, LinearScale, BarElement, Title, Tooltip, Legend);
const BarChart = () => {
const data = {
labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"],
datasets: [
{
label: "Votes",
data: [12, 19, 3, 5, 2, 3],
backgroundColor: "rgba(75, 192, 192, 0.6)",
},
],
};
const options = {
responsive: true,
plugins: {
legend: { position: "top" },
title: { display: true, text: "Sample Bar Chart" },
},
};
return <Bar data={data} options={options} />;
};
export default BarChart;
 
3. 위에서 그려준 차트를 렌더링하기위해서, 아래 코드처럼 다른페이지에서 import해서 사용
 
import React from "react";
import BarChart from "./BarChart";
const App = () => {
return (
<div>
<h1>Chart.js in React</h1>
<BarChart />
</div>
);
};
export default App;

 

'Front-End > React' 카테고리의 다른 글

React 시작하기 - 1  (0) 2020.07.03
React 프로젝트 실행  (0) 2020.06.01
create react app 설치  (0) 2020.05.28
:

React 서버 실행중 빌드 에러 해결 (CI 환경변수 설정)

Front-End/Problem 2025. 3. 18. 13:35
Netlify 에서 React 프로젝트 빌드중에 아래처럼 에러가 발생

 

경고성 메시지 2개 때문에, 프로젝트 빌드가 되지않음.
 
8:27:23 PM: $ npm run build
8:27:23 PM: > react-maple-home@0.1.0 build
8:27:23 PM: > react-scripts build
8:27:30 PM:
8:27:30 PM: Failed to compile.
8:27:30 PM:
8:27:30 PM: Warning
8:27:30 PM: (3556:3) autoprefixer: Replace color-adjust to print-color-adjust. The color-adjust shorthand is currently deprecated.
8:27:30 PM: Warning
8:27:30 PM: (10:56891) autoprefixer: Replace color-adjust to print-color-adjust. The color-adjust shorthand is currently deprecated.
8:27:30 PM: [eslint]
8:27:30 PM: src/components/Header.js
8:27:30 PM: Line 2:10: 'Link' is defined but never used no-unused-vars

 

8:27:30 PM: ​
8:27:30 PM: "build.command" failed
8:27:30 PM: ────────────────────────────────────────────────────────────────
8:27:30 PM: ​
8:27:30 PM: Error message
8:27:30 PM: Command failed with exit code 1: npm run build (https://ntl.fyi/exit-code-1)
....
....
...
8:27:31 PM: Failed during stage 'building site': Build script returned non-zero exit code: 2 (https://ntl.fyi/exit-code-2)

 

 

==> 해결방법

 

Netlify 사이트 설정에서, 아래 처럼 환경변수 CI 값을 false로 설정해 주면, 자잘한 경고성 메시지는 무시한채로 빌드 가능

 

 

 

 

 

 

'Front-End > Problem' 카테고리의 다른 글

A javascript error occurred in the main process 해결  (15) 2020.12.13
:

데이터베이스 접속 오류 (The Network Adapter could not establish the connection)

Back-End/Problems 2025. 3. 1. 12:32

java.sql.SQLException: Cannot create PoolableConnectionFactory (IO 오류: The Network Adapter could not establish the connection)




위와 같이 접속에러가 발생하게 되면
제어판 \ 모든 제어판 항목 \ 관리 도구 \ 서비스에 들어가면 


















OracleXETNSListener의 상태가 시작이 안되고 있는 것을 확인할 수 있다.
수동으로 서비스 시작을 누르면 해결이 된다.






출처
https://m.blog.naver.com/PostView.nhn?blogId=syh_22&logNo=220627456918&proxyReferer=https%3A%2F%2Fwww.google.co.kr%2F

:

저렴한 비용으로 웹서비스 구축하는 방법

개인프로젝트 2024. 12. 23. 09:51

웹서비스를 최소한의 비용으로 구축하려면 비용 절감을 위한 효율적인 선택과 오픈소스 도구 활용이 중요합니다.

각 항목별로 저렴하게 설정하는 방법입니다.

1. 도메인

  • 무료 도메인:
    • Freenom에서 무료 도메인(예: .tk, .ml, .ga)을 사용.
  • 저렴한 유료 도메인:
    • 도메인 등록 업체(예: Namecheap, Google Domains)에서 프로모션을 통해 .com 도메인을 $5~$10/년 정도로 구매 가능.

2. 서버

  • 무료/저비용 클라우드 서비스:
    • AWS Free Tier: 1년 동안 t2.micro(1 vCPU, 1GB RAM) 무료 제공.
    • Google Cloud Free Tier: f1-micro 인스턴스(매월 30GB HDD 포함) 무료.
    • Azure Free Account: 12개월 동안 특정 리소스 무료.
    • Oracle Cloud Free Tier: 항상 무료인 Arm 기반 VM 2개 제공.
  • 저비용 VPS:
    • DigitalOcean, Linode, Vultr 등에서 $5/월부터 시작하는 저렴한 VPS 제공.
  • 자체 서버 호스팅:
    • Raspberry Pi 등 저전력 장치를 사용하여 집에서 서버를 운영. (단, 인터넷 업타임과 보안 관리 필요)

3. 데이터베이스(DB)

  • 오픈소스 데이터베이스:
    • MySQL/MariaDB, PostgreSQL 등 무료로 사용 가능.
  • 클라우드 관리형 DB:
    • Google Cloud, AWS에서 제공하는 무료 DB 서비스.
  • 로컬 설치:
    • 서버에 직접 MySQL/MariaDB를 설치하여 운영.
  • SQLite:
    • 소규모 웹서비스에서는 간단히 SQLite로 시작 가능(파일 기반).

4. 웹 서버

  • 무료 웹서버 소프트웨어:
    • Nginx: 경량화된 고성능 웹 서버.
    • Apache: 안정적이고 널리 사용되는 웹 서버.
  • HTTPS 인증서:

5. 애플리케이션 개발 환경

  • 언어 및 프레임워크:
    • Python: Flask, Django.
    • JavaScript: Node.js, Express.
    • PHP: Laravel, CodeIgniter.
  • 무료 개발 도구:
    • Visual Studio Code, GitHub.

6. 배포 및 버전 관리

  • 무료 Git 리포지토리:
    • GitHub, GitLab, Bitbucket.
  • CI/CD 도구:
    • GitHub Actions, GitLab CI/CD 등 무료로 제공.

7. 운영비 절감 팁

  1. 자동화:
    • Ansible, Docker 등으로 서버 설정 자동화.
  2. 스케일 아웃 전략:
    • 초기에는 최소 리소스 사용, 트래픽 증가 시 추가 리소스 할당.
  3. 정적 웹사이트로 시작:
    • 간단한 웹사이트는 Netlify, Vercel 같은 무료 정적 사이트 호스팅 플랫폼 활용.
  4. 모니터링 도구:
    • 무료로 제공되는 Grafana, Prometheus, UptimeRobot 사용.

예상 초기 비용 예시

항목 비용(월)

도메인 $1~$10/년
서버 무료(AWS 등) 또는 $5~$10
데이터베이스 무료(MySQL)
HTTPS 인증서 무료(Let's Encrypt)
총계 $5~$15

 

위 방법들을 활용하면 초기 비용을 $5~$15 수준으로 유지하면서도 안정적인 웹 서비스를 구축할 수 있습니다.

추가적으로 클라우드 프로모션을 적극 활용해 비용을 절감할 수 있습니다.

:

경력직 기술 면접 예상 질문 - 1

기술 면접 2024. 10. 29. 09:51

1. Spring Boot (스프링) 란?

 

- Java 기반 애플리케이션 개발을 지원하는 오픈소스 프레임워크

 

 

스프링의 특징

 

- 의존성 주입 가능

 

- 웹 프로그램을 개발하기 용이한 MVC(Model-View-Controller) 아키텍처를 지원

 

MVC 패턴

 

- Model : 데이터를 저장하는 부분 (Xml 단 - DB)

 

- Controller : Model을 통해서 데이터를 가져오고 그 정보를 View에 전달 (Java단), 실질적 동작을 하는 부분

 

- View : 시각적인 표현을 담당 (Jsp 단)

 

 

2. Spring Boot (스프링 부트) 란?

 

- 스프링 부트는 스프링으로 애플리케이션을 만들 때에 필요한 설정을 간편하게 처리해주는 별도의 프레임워크

 

- 스프링 부트를 사용하면 기존에 어려운 초기 설정에 쏟아야 했을 시간과 노력을 절약하여 비즈니스 로직을 구현하는데에 집중할 수 있습니다.

 

 

스프링과 스프링 부트의 차이점

 

- 내장 서버 지원 (톰캣 등)

 

- 의존성 관리 간소화

  스프링 부트는 여러 3rd party 라이브러리를 사용할 때, 발생하는 라이브러리 버전 충돌로 인한 문제를 해결하기 위해서,    이미 테스트된 여러 라이브러리들의 묶음 패키지를 제공합니다.

 

- 간편한 설정

 

 

3. Git / GitHub 란?

 

- Git : 버전관리 소프트웨어.

 

- GitHub : Git 프로젝트를 관리하는 호스팅 사이트

 

 

4. Spring Batch 란?

 

- 스프링 배치는 대량의 데이터 처리 작업을 효율적으로 수행하기 위한 스프링 프레임워크의 하위 프로젝트.

 

- 배치 처리란 한정된 데이터를 일괄적으로 처리하는 작업을 의미

  즉, 데이터베이스의 데이터 이관, 대량의 로그 파일 처리, 대용량 데이터의 분석 및 보고 등 다양한 분야에서 활용

 

- 재사용 가능한 기능 제공

 

 

5. Spring Batch 구성요소

 

- Job

스프링 배치의 여러 가지 처리과정을 하나의 단위로 만들어 놓은 가장 큰 실행 단위이다. 하나의 Job은 여러 개의 Step으로 이루어지며, 이 Step들을 순차적으로 실행한다.

 

- Step

Job의 실행 단계를 나타내는 것으로, Tasklet 또는 Chunk 지향 처리 방식으로 구성되어 있다.

 

- Tasklet

Step에서 실행되는 최소 실행 단위이다. 스프링에서 제공하는 Tasklet 인터페이스를 구현하여 실행시킬 수 있다.

Tasklet이 실행되면 Job의 다음 Step으로 넘어가게 된다.

'기술 면접' 카테고리의 다른 글

기술 면접 예상 질문 - 3  (0) 2020.11.10
기술 면접 예상 질문 - 2  (0) 2020.11.10
기술 면접 예상 질문 - 1  (0) 2020.11.10
:

스프링 강의 공부중 1. (springbatch jpa, txt, csv, fixed, json)

Back-End/Spring 2024. 10. 1. 12:18

00:00 스프링 배치

01:31 배치 개발 환경 구성

06:55 Tasklet 배치

27:36 DB Reader/Writer with JPA <-- 시청

51:17 Text File Reader/Writer

1:09:28 CSV Reader/Writer

1:32:35 Fixed Length Reader/Writer

1:37:36 Json Reader/Writer

 

 

 

 

출처 : https://youtu.be/wy99cPHlMlA?si=1NCgxIzH1LseFuCo

 

:

PostgreSQL 버전 업그레이드시 주의점

Back-End/Data Base 2023. 8. 19. 18:21

PostgreSQL 버전 업그레이드는 데이터베이스 시스템의 안정성과 성능을 향상시키는 중요한 작업입니다. 

그러나 업그레이드 과정에서 데이터 손실이나 시스템 장애를 방지하기 위해 몇 가지 주의 사항을 염두에 두어야 합니다. 

아래는 PostgreSQL 버전 업그레이드시 주의해야 할 사항들입니다.

백업: 업그레이드 전에 모든 데이터베이스를 백업해야 합니다. 데이터베이스가 손상되거나 문제가 발생해도 백업을 

통해 데이터 복구가 가능합니다.

문서 확인: 새 버전의 PostgreSQL 릴리스 노트와 문서를 정확하게 확인하고, 어떤 변경 사항이 있는지,

어떤 새로운 기능이 도입되었는지를 파악해서 적용할 부분에 적용을 해야 합니다.

테스트 환경 구축: 실제 운영 환경에 직접 업그레이드하기 전에 테스트 환경을 구축하고 업그레이드 과정을 

테스트하세요. 데이터베이스의 동작과 성능을 확인하여 잠재적인 문제를 발견할 수 있습니다.

하위 호환성 확인: 새 버전과 기존 버전 간의 하위 호환성을 확인하세요. 

특히 애플리케이션 코드와의 호환성을 검토하여 새 버전에서 예상치 못한 문제가 발생하지 않도록 조심하세요.

확장 기능 업그레이드: PostgreSQL의 확장 기능들도 업그레이드가 필요할 수 있습니다. 

각 확장 기능에 대한 문서를 참조하여 업그레이드 과정을 따라가세요.

성능 테스트: 업그레이드 이후에 시스템의 성능을 모니터링하고 문제가 발생하지 않는지 확인하세요.

시간 계획: 업그레이드는 시간이 걸릴 수 있습니다. 적절한 시간을 선택하여 업그레이드를 수행하세요. 시스템 부하가 적은 시간대를 고려하는 것이 좋습니다.

지원 및 커뮤니티 참조: 업그레이드 과정에서 문제가 발생하면 PostgreSQL 커뮤니티와 관련 지원 자료를 

참조하십시오. 경험 있는 개발자나 DBA에게 도움을 요청하는 것도 좋은 방법입니다.

 

:

PostgreSQL과 오라클의 차이점

Back-End/Data Base 2023. 8. 17. 18:11

1. 라이선스 및 비용: PostgreSQL은 오픈 소스 프로젝트로, 무료로 사용하고 수정할 수 있습니다.
오라클은 상용 제품으로 라이선스 비용이 발생하며, 큰 기업에게는 상당한 비용 부담이 될 수 있습니다.

 

2. 라이선스 모델: PostgreSQL은 PostgreSQL 라이선스를 따르며, 오픈 소스 커뮤니티의 협력을 통해 개발되고

유지보수됩니다. 오라클은 프로프리어터리(상용) 라이선스를 따르며, 오라클 공식에서 개발 및 지원됩니다.

 

3. 기능 및 확장성: 오라클은 대규모 엔터프라이즈 환경에서 사용하기 위해 많은 기능과 확장성을 제공합니다.

복잡한 트랜잭션 처리, 병렬 처리, 클러스터링 등을 지원합니다.
PostgreSQL도 많은 기능과 확장성을 제공하지만, 몇몇 엔터프라이즈 기능은 오라클에 비해 제한적일 수 있습니다.

 

4. SQL 호환성: 둘 다 SQL 표준을 따르지만, 오라클과 PostgreSQL 간에는 특정 SQL 문법 및 기능에서

차이가 있을 수 있습니다.

 

5. 설치 및 관리: PostgreSQL은 일반적으로 설치 및 관리가 상대적으로 쉽고 간단합니다.
오라클은 설정 및 관리에 일부 복잡한 과정이 필요할 수 있습니다.

 

6. 용도와 적합성: PostgreSQL은 중소규모부터 대규모까지 다양한 규모의 프로젝트에 적합하며, 특히 중소기업이나

개발자 커뮤니티에서 널리 사용됩니다.
오라클은 대규모 엔터프라이즈 환경에서 주로 사용되며, 고성능, 고가용성, 보안 등에 중점을 둡니다.

 

7. 성능: 오라클은 대량 데이터 처리와 고성능 환경에 최적화된 기능을 제공하므로, 대규모 트랜잭션 처리나

데이터 분석에 강점을 가질 수 있습니다.
PostgreSQL도 높은 성능을 제공하지만, 오라클의 성능과 비교할 때 환경 및 사용 사례에 따라 성능 차이가

발생할 수 있습니다.

: