spring boot7 Kotlin + Spring Boot 3.1.3 + QueryDsl gradle 적용 spring boot 3 이상 버전 부터는 javax.persistence를 사용할 수 없다. 이유는 javax -> jakarta로 상호명이 바뀐건지 인수를 한건지.. (블로그에서 본거라 정확하지는 않다) 그래서 QueryDsl을 implementation할 때 jakarta를 명시해줘야 한다. - build.gradle.kts import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { id("org.springframework.boot") version "3.1.3" id("io.spring.dependency-management") version "1.1.3" kotlin("jvm") version "1.8.22" kotlin("plugin... 2023. 9. 28. spring filter에서부터 커스텀 어노테이션, 객체 파라미터에 값 넣기 처음 필터 단에서 내 나름대로 설계한 인증이 필요한 API EndPoint가 요청으로 들어온다면 헤더의 Authorization의 key값을 조회해서 해당 회원이 존재하는지 확인하고 회원이 존재하면 (로그인 된 상태라면) API 파라미터에 값을 채워넣어주는 로직을 코틀린 공부겸, 간단하게 만들어봤다. class AuthFilter( val custSessionRepository: CustSessionRepository ) : OncePerRequestFilter() { override fun doFilterInternal( request: HttpServletRequest, response: HttpServletResponse, filterChain: FilterChain ) { val uri = req.. 2023. 9. 21. 복합키 Entity Update 복합키로 생성된 엔티티를 수정할 때 //아래는 뽑아온 리스트 안에 업데이트 할 객체만 수정해주기 noticeReadHistoryList.stream() .filter(//바깥 foreach와 동일한지 체크) .forEach(noticeReadHistory -> { noticeReadHistory.setRegisterDt(LocalDateTime.parse(item.getRegisterYmdt(), formatter)); noticeReadHistory.setModifyDt(StringUtils.isNotBlank(item.getModifyYmdt()) ? LocalDateTime.parse(item.getModifyYmdt(), formatter) : null); }); //아래는 (업데이트를 위한) 새.. 2023. 9. 17. spring cloud gateway 라우팅 원래 회사에서는 netflix zuul을 통해 서버 라우팅을 하고있는데 사이드프로젝트에 적용하려고 보니까 더이상 zuul은 이제 더이상 지원하지도 않고 권장하지 않는 방법이라길래 클라우드 게이트웨이로 선택해봤다. 넷플릭스 디스커버리에 등록도 잘 된다. build.gradle implementation 'org.springframework.cloud:spring-cloud-starter-gateway' application.yml management: endpoint: gateway: enabled: true endpoints: web: exposure: include: gateway spring cloud 공식문서에서 하라는대로 설정했다. @Configuration public class RouteLoc.. 2023. 8. 8. 이전 1 2 다음