본문 바로가기
728x90

JPA8

[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.
자바(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.
(React + Typescript) + (Spring Boot + JPA + MySQL) 프로젝트 세팅 / tailwind css 설치 오류 포함 개인적으로 React + Typescript도 공부할겸, Spring Boot도 복습할 겸 맨땅에 헤딩을 하는 방법으로 무작정 프로젝트를 시작했다.그런데 역시나 초기 세팅부터 이래저래 우여곡절이 많았다. 기존에는 백엔드 프로젝트를 할때 spring boot 프로젝트 만들고 프론트엔드 부분은 Thymeleaf를 주로 활용해서 intelliJ나 STS로 진행을 했었는데, 이렇게 프론트엔드 작업과 백엔드 작업을 한번에 하는 경우 프로젝트를 어떻게 세팅해야 할지 막막했다. 특히 React + Typescript는 기본 지식이 있는게 아니라 이번에 맨땅에 헤딩 하면서 공부할 생각이었기에 전적으로 chatGPT와 구글링의 도움이 필요했다. 그래서 지금 정리하는 아래의 방법이 일반적인 방법인지 솔지히 모르겠지만, 나.. 2025. 2. 12.
JPA & Hibernate 개념 JPA(Java Persistence API)와 Hibernate의 관계는 ORM(Object-Relational Mapping) 기술에서 매우 중요합니다.  1. JPA (Java Persistence API)정의: JPA는 Java에서 객체와 데이터베이스 간의 매핑을 위한 표준 API입니다. JPA는 ORM을 구현하는 방법을 제공하며, SQL 쿼리를 직접 작성하지 않고도 데이터베이스 작업을 수행할 수 있게 해줍니다.주요 기능:엔티티(Entity) 매핑데이터베이스 CRUD(Create, Read, Update, Delete) 작업쿼리 기능 (JPQL 사용) 2. Hibernate정의: Hibernate는 JPA의 구현체 중 하나로, 가장 널리 사용되는 ORM 프레임워크입니다. Hibernate는 JPA.. 2025. 1. 17.
Mybatis & JPA 비교 MyBatis와 JPA는 Java에서 데이터베이스와 상호작용하기 위한 두 가지 주요 방법입니다.1. MyBatis MyBatis는 SQL 쿼리를 직접 작성하고 이를 매핑하여 객체와 데이터베이스 간의 변환을 처리하는 프레임워크입니다. SQL을 직접 작성할 수 있어 복잡한 쿼리를 쉽게 사용할 수 있지만, 쿼리와 매핑을 수동으로 관리해야 합니다. 특징SQL 쿼리를 직접 작성할 수 있음.XML 파일이나 어노테이션을 사용하여 매핑 설정.복잡한 쿼리를 쉽게 작성 가능.SQL의 유연성을 제공하지만, 코드량이 많아질 수 있음.코드 예시1. MyBatis 설정 (XML)mybatis-config.xmlxml .. 2025. 1. 17.
Spring Boot Entity 클래스(스프링/부트/자바/백엔드개발/프로그래밍/Java/backend) Spring Boot에서 Entity 클래스는 주로 데이터베이스의 테이블과 매핑되는 객체를 정의할 때 사용됩니다. 이 클래스는 데이터베이스의 구조를 반영하며, JPA(Java Persistence API)를 사용할 때 특히 중요합니다. 하지만 JPA 외에도 Entity 클래스는 다른 상황에서도 사용될 수 있습니다. 1. Entity 클래스의 정의Entity 클래스는 데이터베이스의 테이블에 해당하는 객체로, 각 인스턴스는 테이블의 한 행(row)을 나타냅니다. Entity 클래스는 다음과 같은 속성을 가집니다:필드: 데이터베이스 테이블의 컬럼에 매핑되는 변수들.메소드: 데이터에 접근하고 조작하기 위한 getter/setter 메소드. 2. JPA를 사용할 때 Entity 클래스의 필요성JPA를 사용할 때 .. 2024. 11. 28.
728x90