본문 바로가기

jpa4

Spring JPA hibernate.ddl-auto 정리 JPA 관련 설정 - spring.jpa.hibernate.ddl-auto에 대해 정리 none: 'hibernate.ddl-auto=none' 을 설정하면 Hibernate는 데이터베이스 스키마를 자동으로 생성하거나 갱신하지 않음. 즉, 애플리케이션을 실행할 때 데이터베이스의 스키마는 수동으로 관리해야 함 spring.jpa.hibernate.ddl-auto=none update: 'hibernate.ddl-auto=update' 는 Hibernate가 엔티티 클래스의 변경 사항을 기반으로 데이터베이스 스키마를 자동으로 갱신하려고 시도. 즉, 새로운 테이블이나 컬럼을 추가하거나 변경된 내용을 반영. 단, 기존 데이터는 유지되고, 새로운 컬럼에 대해서는 기본 값이 할당됨 (기존의 테이블이나 컬럼을 삭제하.. 2023. 12. 4.
SpringBoot 간단한 CRUD REST API 구현 및 JUnit5로 테스트하기 REST API란? REST API는 REST(representational state transfer)를 기반으로 하여 HTTP 요청을 사용하여 데이터에 액세스하고 사용하는 API의 아키텍처 스타일입니다. CRUD란? API를 구축할 때 모델이 제공하는 4가지 기본 유형의 기능, Create(생성), Read(읽기), Update(수정), Delete(삭제)를 CRUD라고 합니다. CRUD 구현 (Entity, Repository, Service, Controller) JPA와 H2 데이터베이스를 사용하여 간단하게 구현했습니다. User.java (Entity) package com.example.practice.impl; import lombok.Builder; import lombok.Getter;.. 2022. 2. 26.
JPA Auditing으로 Entity의 createdDate, modifiedDate 관리 JPA Auditing? 데이터를 관리하는데 있어서 생성시점, 수정시점 등 언제 데이터가 변경되었는지 기록해 두는 것은 매우 중요합니다. 그리고 이러한 것들은 한 엔티티에 국한된 것이 아니라 모든 엔티티에 적용됩니다. 중복을 편하게 해결하기 위해 Spring Data는 엔티티를 생성하거나 변경한 시점을 추적하기 위한 것들을 제공합니다. 이 기능을 이용하면 데이터를 생성하거나 수정할 때 따로 로직을 구현하지 않아도 자동적으로 시간 데이터를 관리해줍니다. 예제로 확인하기 위해 먼저 간단하게 Entity, Controller, Repository, Service를 구현하였습니다. User.java package com.example.practice.impl; import lombok.Builder; impor.. 2022. 2. 26.
Spring Data JPA & H2 데이터베이스 연결하기(인메모리, TCP) 로컬에서 개발하거나 단위 테스트, 토이 프로젝트 등을 진행할 때 H2 데이터베이스를 많이 사용합니다. H2 데이터베이스는 설치와 관리가 편하고, 여러 데이터베이스와 호환성도 지원하기 때문에 가볍게 사용하기 좋습니다. 설명을 위해 먼저 간단하게 Entity, Controller, Repository, Service를 구현하였습니다. User.java package com.example.h2connect.web; import lombok.Builder; import lombok.Getter; import lombok.NoArgsConstructor; import javax.persistence.*; @Getter @NoArgsConstructor @Entity public class User { @Id @G.. 2022. 2. 24.