본문 바로가기

반응형

백엔드 개발/코틀린(Kotlin)

(3)
Querydsl을 사용하는 자바(JAVA) Spring Framework 프로젝트에 코틀린(Kotlin) 설정 1. QueryDSL이란? Spring Framework에서 JPA, QueryDsl 조합을 애용하고 있다. 특히, QueryDsl을 사용하면 SQL, JPQL을 type safe하게 작성할 수 있다. type safe하게 작성할 수 있다는 것은 IDE의 지원을 받아서 쉽고 안전하게 Query를 작성할 수 있다는 의미이다. 그리고 Spring Data JPA를 사용하면 다이나믹 쿼리를 사용할 수 없어서 코드가 장황해지고 중복되는데. QueryDsl는 다이나믹 쿼리를 작성가능해서 반복되는 코드수를 줄일 수 있다. 2. 자바(Java)를 사용하는 Spring data jpa project에서 QueryDsl 설정 QueryDsl을 사용하려면 컴파일(Compile)시에 QClass를 생성하기 위한 설정을 해야..
코틀린(Kotlin)으로 스프링 시큐리티(Spring Security) 유저 정보 조회 코틀린(Kotlin)으로 스프링 시큐리티(Spring Security) 유저 정보 조회 들어가며 코틀린(Kotlin)을 회사 웹 서비스에 도입하기 위해 공부하고 있다. Kotlin으로 Spring Boot Security - Login 맛보기 라는 글을 참고해 로그인 부분을 구현했다. 훌륭한 글이지만 실무에서 사용할 만한 기능의 예시는 없어서 내가 테스트해보고 글을 적는다. 본 글에서 다루는 내용 UserDetails를 구현해서 필요한 유저 정보를 로그인 시 SecurityContext에 저장하기 저장한 유저 정보를 SecurityContextHolder로 조회 유저 정보를 불러오는 코틀린 함수 정의(JAVA의 유틸 클래스(Util Class)를 대체) JAVA에서 코틀린 함수를 호출 코틀린의 안전한 캐..
코틀린(Kotlin) data class를 JPA에서 사용시 주의할 점 코틀린(Kotlin) data class를 JPA에서 사용시 주의할 점 들어가며 코틀린(Kotlin)을 회사 웹 서비스에 도입하기 위해 공부하던 중 kotlin의 data class를 spring data jpa에서 사용시 주의할 점을 알게 되었다. data class란 무엇인가? lombok에서 사용하는 @Data 어노테이션과 비슷한 기능을 코틀린(Kotlin) 언어 자체에서 지원한다고 보면 된다. 지원 기능은 대표적으로 아래와 같다. equals() / hashCode() 자동 선언 toString() 자동 선언 copy() 함수 구현 반복되는 코드 구현을 줄여주는 좋은 기능이다. 실제로 웹상의 많은 예제에서 data class의 장점으로 spring data jpa의 entity를 예시로 들었다. ..

반응형