본문 바로가기
반응형

Spring Framework36

JPA @LastModifiedDate Column Insert 시 NULL로 넣는 방법 @LastModifiedDate @Column(insertable = false) private LocalDateTime updated_date; JPA에서 Entity에서 특정 컬럼에 @LastModifiedDate 어노테이션을 달아주면 특정 Row에 Insert / Update 시 현재 시간이 들어가게 되는데 Insert 시에는 NULL이 들어가고 Update 시에만 현재 시간이 들어가게 하려면 @Column을 @Column(insertable = false) 로 바꿔주면 Update 시에만 값이 들어가게 된다 2022. 8. 10.
JPA @CreatedDate Column Update시 Null 되는 현상 해결방법 @CreatedDate @Column(updatable = false) private LocalDateTime created_date; JPA에서 Entity의 컬럼에 @CreatedDate 어노테이션을 사용한 경우 처음 Insert 시에는 정상적으로 현재 시간이 들어가지만 Update 시에 Null이 들어가는 경우가 있는데 해결방법은 Entity로 이동한 후 @Column 우측에 @Column(updatable = false) updateable = false를 추가해주면 삽입 시에는 정상적으로 들어가지만 Update는 되지 않기 때문에 기존 값이 NULL로 변하지 않게 된다 2022. 8. 10.
스프링부트 Querydsl 세팅방법 정리 dependencies { implementation "com.querydsl:querydsl-core:5.0.0" implementation "com.querydsl:querydsl-jpa:5.0.0" implementation "com.querydsl:querydsl-apt:5.0.0" annotationProcessor("com.querydsl:querydsl-apt:5.0.0:jpa") } sourceSets { main { java { srcDirs = ["$projectDir/src/main/java", "$projectDir/build/generated"] } } } 스프링부트에서 Querydsl을 세팅하려면 먼저 build.gradle 파일을 킨 뒤에 dependencies에 queryds.. 2022. 7. 25.
JPA No default constructor for entity 해결방법 sampleRepository.findByGender("W") org.hibernate.InstantiationException: No default constructor for entity: : com.sample.model.Sample JPA 에서 위와 같이 조회하는 경우 No Default Constructor for Entity : Entity명 에러가 발생하는 경우는 Entity에 @Builder 어노테이션을 넣어두었을 경우 해당 Entity를 사용하는 Repository를 호출하면 발생하는데 해결방법은 에러가 발생하는 Entity로 이동한 뒤 @NoArgsConstructor @AllArgsConstructor 두 어노테이션을 클래스 위에 설정해 주거나 혹은 Entity 클래스에서 @Build.. 2022. 7. 24.
스프링부트 Logger 메소드 내에서 파라미터 지정방법 스프링부트에서 log.info log.debug log.trace log.error 등의 Logger를 사용 시 메소드 내에서 파라미터를 할당해줄 수 있는데 log.info("NAME : {}, AGE : {}", "TEST", 10); >> NAME : TEST, AGE : 10 위 코드 블럭처럼 log 사용 시 출력할 값에 파라미터를 할당할 부분마다 {}를 넣어주고 이후 ,를 추가하며 {} 에 할당할 값을 넣어주면 입력한 {} 순으로 지정한 파라미터가 들어가는 것이 보인다 여기서 {} 갯수에 비해 파라미터를 덜 할당하면 먼저 입력한 {} 부터 채우고 나머지는 {}로 출력한다 2022. 7. 5.
스프링부트 application.yaml 값 변수로 가져오는 방법 server: port: 8081 스프링 프로젝트에서 application.yaml 안에 위와 같이 port 값으로 지정한 8081을 자바에서 가져오려면 import org.springframework.beans.factory.annotation.Value; @Service class명 { @Value("${server.port}") private int SERVER_PORT; } class 명 위에 @Service / @Component 등의 어노테이션을 달아준 후 변수명 위에 @Value("${경로}") 을 지정해주면 application.yaml 에 설정한 값을 자바 클래스 안으로 가져올 수 있게 된다 2022. 6. 15.

반응형