Category Framework

framework애 대한 내용입니다

jOOQ INSERT

데이터 삽입은 모든 애플리케이션의 기본이다. jOOQ는 JPA처럼 편리한 DAO 방식부터 벌크 INSERT까지 다양한 INSERT 패턴을 제공한다 jOOQ INSERT의 5가지 방식 자동 생성 DAO를 통한 INSERT JPA의 save() 메서드처럼 사용할 수 있는 가장 간편한 방식 Repository 구현 핵심 특징 생성된 SQL…

jOOQ subQuery와 Enum Converter

복잡한 SQL의 핵심은 서브쿼리이다. jOOQ는 세 가지 타입의 서브쿼리(SELECT절, FROM절, WHERE절)를 타입 안전하게 작성할 수 있다 서브쿼리의 3가지 유형 스칼라 서브쿼리 (SELECT절) SELECT절에서 서브쿼리를 사용하여 계산된 값을 조회한다 요구사항 영화별 대여료를 기준으로 가격 등급을 분류하고, 각 영화의 총 재고 수를…

jOOQ 조건절과 동적 쿼리

SQL의 핵심은 조건 절이다. jOOQ는 타입 안전한 방식으로 조건을 구성하고, 동적으로 쿼리를 생성할 수 있는 강력한 기능을 제공한다. jOOQ의 모든 조건은 org.jooq.Condition 인터페이스를 구현한다. 이 조건들은 메서드 체이닝 방식으로 조합할 수 있어 직관적이고 읽기 쉬운 코드를 작성할 수 있다 AND…

jOOQ DAO

jOOQ는 generate { daos = true } 설정으로 각 테이블마다 기본 CRUD 메서드를 포함한 DAOImpl을 상속한 DAO 클래스를 자동 생성한다 자동 생성된 DAO란? jOOQ는 각 테이블에 대해 DAOImpl을 상속받은 DAO 클래스를 생성한다 생성 위치 FilmDao 구조 DAO 활용 방법 –…

jOOQ 쿼리 SELECT와 JOIN

jOOQ 쿼리 작성의 시작점 – DSLContext 모든 jOOQ 쿼리는 DSLContext로부터 시작된다. Spring Boot에서는 spring-boot-starter-jooq 의존성을 추가하면 자도응로 빈으로 등록되어 주입받아 사용할 수 있다. jOOQ의 SQL Dialect 지원 jOOQ는 JPA처럼 데이터베이스 방언(Dialect)을 지원한다. 같은 기능이라도 DB 벤더마다 다른 SQL 문법을 사용하는…

jOOQ DSL 커스터마이징

jOOQ를 프로젝트에 도입한 후, DSL 생성 방식을 커스터마이징하면 더욱 효율적으로 사용할 수 있다. jOOQ DSL 커스터마이징 3가지 방법 DSL Generate Strategy Generate 옵션 jOOQ Runtime Configuration Generate Strategy – 클래스 이름 커스터마이징 QueryDSL의 Q prefix처럼, jOOQ에서도 j prefix를 사용하여 자동…

EKS – Kubernetes Secret과 Spring Deployment

Kubernetes Secret 관리 Secret은 민감한 정보 (데이터베이스 암호, API 키 등)를 코드와 분리하여 Kubernetes 자원으로 안전하게 저장하는 메커니즘이다 저장 → 주입 흐름 Secret 생성 실제 예시 Secret 조회 출력 예시 참고: Secret의 데이터는 Base64로 인코딩 되어 있다(암호화가 아니다). Base64 디코더로…

EKS – Spring 프로젝트 ECR 업로드

Spring 프로파일 설정 이해 프로파일 구조 Spring 프로젝트에는 환경별로 다른 설정을 사용하기 위한 프로파일 시스템이 있다 프로파일 활성화 메커니즘 application.yml 이 설정을 prod로 변경하면 application-local.yml application-prod.yml 핵심: application.yml의 default 값과 각 프로파일 파일의 on-profile 값이 일치하면 해당 파일이 적용된다 Kubernetes…

EKS – Spring 백엔드 서버 배포 아키텍처

Spring 백엔드 서버 배포는 두 단계로 진행한다 MSA와 Kubernetes를 같이 사용하는 이유 MSA 아키텍처는 Kubernetes와 궁합이 매우 잘 맞는다 따라서 MSA 아키텍처를 사용하는 기업에서는 Kubernetes(특히 EKS)로 배포 환경을 구성하는 경우가 많다. MSA 서버 배포까지 경험해야 Kubernetes 배포를 제대로 이해했다고 할…

Kafka를 활용한 MSA 이벤트 기반 아키텍처 구축

Kafka를 활용하여 마이크로서비스 아키텍처(MSA) 기반의 회원 가입 및 이메일 발송 시스템을 구축하는 방법을 알아보자. Kafka의 메시지 브로커 역할을 통해 서비스 간 비동기 통신을 구현하며, 이벤트 기반 아키텍처의 핵심 개념을 실습한다 프로젝트 목표 시스템 아키텍처 전체 구조 서비스 구성 서비스 역할…