Springboot Kafka Cluster 설정 및 사용 방법 (@Configuration 클래스 사용)
·
Programming/BackEnd
- Kafka 서비스가 Cluster 로 구성되어 동작중이라 가정하겠습니다.이를 Springboot 로 접근하여 사용하는 설정 방법을 정리합니다. Kafka Cluster 구성법은 이 글 을 참고하세요. - build.gradlegradle 파일에implementation("org.springframework.kafka:spring-kafka:3.2.0")위와 같이 kafka 라이브러리를 설정후 Gradle 싱크를 해줍니다. - 폴더 구조위와 같이 kafka consumer 설정과 producer 설정을 따로 할 것입니다. - application.yml설정 파일에는,# Kafka Cluster 설정kafka-cluster: # Kafka 추가 # 작명법은, 앞에 kafka{index}-{제목} 형식..
Springboot 프로젝트 Docker 로 배포하기
·
Programming/BackEnd
- 이번 포스트는 개발이 완료된 Springboot 프로젝트를 Docker 를 사용하여 배포하는 방법에 대해 정리하겠습니다.아시다시피 Docker 는 어느 플랫폼에서도 동일한 동작을 보장하는 컨테이너 기반 VM 입니다.고로 본 게시글에서 실습해볼 내용은,일단 로컬 환경에서 Springboot 프로젝트를 Docker 컨테이너 안에 띄우고, 해당 Docker 컨테이너로 접근하여 서비스에 정상 접근할 수 있는지를 확인하는 것이며,정상 실행이 된다면 어느 환경, 어느 위치에라도 동일한 방식으로 배포할 수 있게 되는 것입니다. - 실습1. OS Command 입력창을 열고 Springboot 의 루트 경로로 이동합니다.cd "/Users/.../SpringBoot_MvcTemplate"저의 경우는 위와 같은 프로..
Thymeleaf HTML 내에서 Springboot 변수 사용 방법 정리
·
Programming/BackEnd
- API 설계[SC1MainScV1Controller.kt]@Controller@RequestMapping("/main/sc/v1")class SC1MainScV1Controller( private val service: SC1MainScV1Service) { // // @Operation( summary = "N1 : 홈페이지", description = "루트 홈페이지 화면을 반환합니다.\n\n" ) @ApiResponses( value = [ ApiResponse( responseCode = "200", description = "정상 동작" ..
JPA Native Query sum 함수 반환값은 Nullable 이 될 수 있습니다.
·
Programming/BackEnd
- JPA 네이티브 쿼리에서 sum 으로 값을 더하여 가져올 때, sum 결과물이 null 이 될 수 있습니다.검색 데이터가 아예 없는 경우와,그리고 nullable 타입의 컬럼에 sum 을 할 때, 검색된 결과가 모두 null 일 경우가 그러합니다. (하나라도 검색이 되었다면, null 부분은 0 으로 취급하여 더해집니다.)  요약하자면, sum 결과값은 Long? 으로 받으세요.
JPA Native Query Boolean 매핑 주의점
·
Programming/BackEnd
- JPA 네이티브 쿼리에서 TRUE, 혹은 FALSE 로 반환되는 변수는 매핑 객체에서 Boolean 그대로 받을 수 없고, Long 타입으로 받습니다. (1L == True, 0L == False) IF( join_info.uid IS NOT NULL AND ( select count(*) FROM coverage_request where join_info_uid = join_info.uid and row_delete_date_str='/' and r..
Springboot JPA Timezone 설명 (데이터베이스와 Springboot 간의 타임존 처리 방식)
·
Programming/BackEnd
- JPA 에서 DATETIME 변수를 다룰 때는 자동으로 TimeZone 을 맞춰줍니다.    예를들어 JPA 가 돌아가는 Springboot 의 타임존 설정이 UTC,    데이터베이스가 KST 시간을 사용중이라고 했을 때,    JPA 에서 UTC 시간인 2024-05-02 03:38:46.026 를 데이터베이스에 입력하면,     데이터베이스에는 실제로는 KST 시간인 2024-05-02 12:38:46.026 가 저장이 되며,    데이터베이스에서 KST 시간인 2024-05-02 12:38:46.026 를 조회하면,     UTC 시간을 사용중인 스프링부트 시스템에 맞춰서 JPA 는,     2024-05-02 03:38:46.026 라고 데이터를 변환해줄 것입니다. - Springboot 에..