본문 바로가기
반응형

전체 글91

[JPA] @Setter 대신 @Builder 사용해야하는 이유 @Setter로 생성자 이용 vs  @BuilderJUnit 테스트 할 때 @Setter를 사용하면 set문장이 많아져 코드가 길어진다. 이를 @Builder를 사용하면 한줄코드로 간편하다.  또한, 명확히 어떤 필드에 어떤 값을 채워야 할지를 알 수 있는 장점이 있다.(@ Builder는 해당 클래스의 빌더 패턴 클래스를 생성해주고, 생성자 상단에 선언 시 생성자에 포함된 필드만 빌더에 포함한다.) 주의: @Builder를 사용하려면 기본생성자를 만들어주는@NoArgsConstructor(access = AccessLevel.PROTECTED) 어노테이션도 함께 써야 한다. 그 이유는Reflection을 통한 객체 생성: 빈 객체를 생성하고 필드 값을 설정하기 위해 Java Reflection을 사용할.. 2024. 2. 14.
[springboot] JUnit 테스트에서 @Slf4j 사용하기 JUnit 테스트에서 @Slf4j 사용하려면 build.gradle 파일에 아래 내용을 추가해야 한다. testAnnotationProcessor 'org.projectlombok:lombok' // 테스트를 위한 세팅 @Slf4j testImplementation 'org.projectlombok:lombok' // 테스트를 위한 세팅 @Slf4j 그러면 정상적으로 로그를 사용할 수 있다.아래는 @Slf4j  사용한 예시다.package com.pnow.repository;import com.pnow.domain.Category;import com.pnow.domain.CategoryType;import lombok.extern.slf4j.Slf4j;import org.junit.jupiter.api... 2024. 2. 14.
[JPA] jpa insert시 default 적용 jpa 엔터티 default 설정을 하려면 @DynamicInsert 어노테이션과 @ColumnDefault 어노테이션을 같이 써야 적용이 된다. 예시코드(java):package com.pnow.domain;import com.pnow.domain.user.User;import lombok.Getter;import lombok.Setter;import org.hibernate.annotations.ColumnDefault;import org.hibernate.annotations.DynamicInsert;import javax.persistence.*;import java.time.LocalDate;import java.time.LocalTime;@Setter //jpa 테스트를 위해@Getter@En.. 2024. 2. 13.
[java] LocalDate , LocalDateTime, LocalTime 차이 LocalDate :날짜 LocalDate today = LocalDate.now(); System.out.println("Today is " + today); LocalDate birthday = LocalDate.of(1982, 7, 13); System.out.println("My birthday is " + birthday); LocalDate christmas = LocalDate.parse("2017-12-25"); System.out.println("Last Christmas is " + christmas); 결과: Today is 2018-06-17 My birthday is 1982-07-13 Last Christmas is 2017-12-25 위 예제 코드 처럼 LocalDate 클래스.. 2024. 2. 12.
[JPA] jpa 메서드 질문 데이터 저장하기1) 질문 엔티티로 테이블을 만들었으니 이제 만들어진 테이블에 데이터를 생성하고 저장해 보자. 먼저, src/test/java 디렉터리의 com.mysite.sbb 패키지에 SbbApplicationTests.java 파일을 열어 보자.2) SbbApplicationTests.java 파일을 열었다면 다음과 같이 수정해 보자.package com.mysite.sbb;import java.time.LocalDateTime;import org.junit.jupiter.api.Test;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.context.SpringBoo.. 2024. 2. 12.
[토이프로젝트] h2-console mv.db 오류 해결 localhost:9091/h2-console로 접속해서 연결 누르니까 아래와 같이 local.mv.db파일이 없다고 나온다. springboot 2점대는 수동으로 mv.db파일을 만들어줘야 한다. h2 console 엔진 버튼 우클릭해서 create database를 클릭해서 아래와 같이 db파일을 만들어 준다. 그럼 local.mv.db파일이 생성되었다. (혹시나 jdbc:h2:~/test라고 했으면 test.mv.db파일을 생성해야 한다. 그러므로 Database Path : C:\Users\chg11\test 라고 적어줘야 한다. 그러면 저 경로에 test.mv.db 파일이 생긴다.) 다시 연결 test누르니까 아래와 같이 지원되지 않는 데이터베이스 파일 버전 또는 "C:/Users/chg11/l.. 2024. 2. 11.
반응형