본문 바로가기

springboot12

[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.
[springboot] jpa 엔티티 3점대 jakarta 패키지 주의사항 jpa 엔터티 설정할 때 패키지를 버전별로 다르게 써야 한다. 스프링부트 2.x 버전 import javax.* 스프링부트 3.x 버전 import jakarta.* jpa 3.x버전 jakarta 패키지 예시:package com.mysite.sbb;import java.time.LocalDateTime;import jakarta.persistence.Column;import jakarta.persistence.Entity;import jakarta.persistence.GeneratedValue;import jakarta.persistence.GenerationType;import jakarta.persistence.Id;import lombok.Getter;import lombok.Setter;@G.. 2024. 2. 11.
[springboot] IntelliJ에서 jdk17, Springboot3.2.2 설치 및 환경설정 1. jdk 17 다운로드먼저, jdk17버전 다운로드를 한다.https://www.oracle.com/kr/java/technologies/downloads/#jdk17-windows설치 후 인텔리제이 Project Structure 로 들어가 다운받은 jdk17로 SDK를 설정하고, Language Level을 SDK default로 설정해준다.Modules 로 들어가 모듈 SDK도 바꿔주고 apply를 누른다. Settings로 들어가서 Gradel로 들어가 Gradle JVM도 바꿔준다.  아래 사이트를 참고하기!https://inpa.tistory.com/entry/IntelliJ-%F0%9F%92%BD-%EC%9E%90%EB%B0%94-JDK-%EB%B2%84%EC%A0%84-%EB%B3%80.. 2024. 2. 11.