본문 바로가기
728x90

Spring25

[AutoSume 프로젝트] React, Spring Boot, ChatGPT로 웹앱 개발: AutoSume 기술 학습 기록 1. 개요AutoSume는 React, Spring Boot, ChatGPT API를 활용해 자소서 자동 생성과 채용 공고 분석을 구현하는 풀스택 프로젝트이다. 이 포스트는 프로젝트에 사용된 기술(React, TypeScript, Tailwind CSS, Spring Boot, JPA, Spring Security, Python, FastAPI, BeautifulSoup, ChatGPT API, MySQL, JWT)의 핵심 개념과 학습 내용을 정리한다. 초보 개발자로서 기술을 배우고 포트폴리오를 만드는 과정이 목표다.1.1 학습 목표React와 TypeScript로 동적 UI 구현.Spring Boot와 JPA로 REST API와 데이터베이스 연동.ChatGPT API로 AI 기반 자소서 생성.Pytho.. 2025. 4. 18.
[AutoSume 프로젝트] React를 활용한 프론트엔드 개발 진행중 1. 프로젝트 개요AutoSume는 채용 공고 분석과 자소서 자동 생성을 목표로 하는 개인 풀스택 프로젝트이다. React, TypeScript, Spring Boot, ChatGPT API를 활용해 개발 중이며, 취업 준비생을 위한 도구로 기획했다. 이 포스트는 프로젝트 구조, 기술 스택, 개발 과정, 학습 내용을 기록한다.1.1 주요 기능자소서 생성: 사용자 입력을 ChatGPT API로 처리해 자소서 답변 생성.자소서 관리: 생성된 자소서를 목록으로 저장, 조회, 삭제.다운로드: 자소서를 PDF 또는 텍스트로 내보내기.인증: 로그인/회원가입으로 사용자별 자소서 관리.크롤링(예정): 채용 공고 데이터 수집 및 기술 트렌드 분석.1.2 목표풀스택 개발 학습: 프론트엔드, 백엔드, AI 연동 경험.포트폴.. 2025. 4. 18.
Web Server와 WAS의 차이 웹 개발 또는 서버 인프라를 다루다 보면 반드시 마주하게 되는 개념이 있다.바로 Web Server(웹 서버) 와 WAS(Web Application Server, 웹 애플리케이션 서버) 이다.이 둘은 비슷해 보이지만 역할과 기능이 명확히 다르며, 개발자라면 반드시 구분해서 이해해야 한다.✅ Web Server란?웹 서버(Web Server) 는 말 그대로 웹 브라우저(클라이언트)의 요청을 받아 정적인(Static) 파일을 응답하는 서버다.예를 들어 사용자가 웹 주소를 입력하면,HTML, CSS, JavaScript, 이미지 등의 정적인 리소스를 찾아서 그대로 반환해주는 역할을 한다. 🔹 예시: 사용자가 http://www.example.com/index.html 요청 → 웹 서버가 index.html.. 2025. 4. 7.
자바(Java)에서 1:N 관계와 상속 자바를 이용한 웹 개발, 특히 Spring Boot와 JPA를 사용할 때 빠지지 않는 개념이 있다.바로 1:N 관계와 상속이다. 이 개념을 명확히 이해하면 엔티티 설계는 물론, 데이터베이스 관계 설계까지 훨씬 수월하게 진행할 수 있다.🔍 1:N 관계란 무엇인가?📌 정의**1:N 관계(One-to-Many)**는 말 그대로 하나의 객체가 여러 개의 다른 객체를 가질 수 있는 관계이다.예를 들어, **하나의 회원(Member)**이 여러 개의 **게시글(Post)**을 작성할 수 있다고 생각해보자.📌 실제 예제@Entitypublic class Member { @Id @GeneratedValue private Long id; private String name; @OneToM.. 2025. 4. 6.
스프링 DI(Dependency Injection) 스프링을 사용하면 객체 간의 의존성을 관리하는 방식이 기존의 Java 코드와 다르다.특히, **의존성 주입(DI, Dependency Injection)**은 스프링의 핵심 개념 중 하나이며, 이를 통해 객체 간의 결합도를 낮추고 유지보수를 쉽게 만들 수 있다.✅ 의존성(Dependency)이란?객체 A가 객체 B를 사용해야 할 때, A는 B에 **의존(Dependency)**한다고 말할 수 있다.예를 들어, MemberService 클래스에서 MemberRepository 클래스를 사용한다고 가정해 보자.public class MemberService { private MemberRepository memberRepository = new MemberRepository();} 위 코드에서는 Mem.. 2025. 3. 27.
@Transactional: 데이터베이스 트랜잭션 관리의 핵심(백엔드개발/Spring Framework) Java와 Spring 프레임워크를 사용하여 개발할 때, 데이터베이스 트랜잭션 관리의 중요성을 간과할 수 없다. 이때 @Transactional 어노테이션이 큰 역할을 한다.1. 트랜잭션이란?트랜잭션은 데이터베이스에서의 작업 단위를 의미한다. 여러 작업을 하나의 단위로 묶어 처리하며, 데이터의 일관성과 무결성을 보장하기 위한 중요한 요소이다. 트랜잭션은 다음과 같은 네 가지 주요 속성(ACID)으로 정의된다:원자성 (Atomicity): 트랜잭션 내의 모든 작업이 완전히 수행되거나 전혀 수행되지 않아야 한다.일관성 (Consistency): 트랜잭션이 성공적으로 완료되면 데이터베이스는 일관된 상태여야 한다.고립성 (Isolation): 동시에 실행되는 트랜잭션이 서로에게 영향을 미치지 않도록 보장한다.지.. 2025. 2. 28.
728x90