Spring Boot 다중 데이터 소스 및 트랜잭션 관리
Spring Boot 애플리케이션에서 여러 데이터베이스를 사용하고 각각의 트랜잭션을 제어하는 방법을 설명합니다.
애플리케이션 시작 지점에 @EnableTransactionManagement 어노테이션을 추가하여 트랜잭션 관리를 활성화합니다.
package com.example.multidb;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringB ...
6월 10일 00:34에 게시됨
SpringBoot 비동기 태스크에서 HttpServletRequest 접근하기
Spring Boot 애플리케이션에서 비동기 태스크는 일반적으로 @Async 어노테이션을 사용하여 구현됩니다. 이를 통해 백그라운드 스레드에서 메서드를 실행할 수 있어 애플리케이션의 성능과 응답 속도를 향상시킬 수 있습니다. 그러나 비동기 태스크에서 HttpServletRequest 객체에 접근해야 하는 경우, 몇 가지 도전에 직면하게 됩니다. HttpServletRequest는 스레드에 바인 ...
6월 9일 21:35에 게시됨
Java 기반 오프라인 환경의 미디어 콘텐츠 안전성 자동 검증 시스템 설계
엔터프라이즈급 시스템 구축 시 외부 인터넷망 접근이 차단된 폐쇄형 네트워크 환경에서 사용자 업로드 파일에 대한 보안 검증은 필수적입니다. 특히 성인물, 폭력적 장면 등 불건전 콘텐츠를 자동 필터링하기 위해 일반적인 클라우드 API 는 사용할 수 없으므로, 온프레미스에서 수행 가능한 로컬 분석 기술의 도입이 필요합니다.
본 프로젝트에서는 Python 기반의 오픈 ...
6월 9일 00:47에 게시됨
Spring AI MCP 서버의 STDIO 및 SSE 구현
Spring AI MCP 서버는 다양한 데이터 전송 메커니즘을 지원하며, 각각의 전송 방식은 고유한 스타터를 통해 활성화됩니다. 이 문서에서는 STDIO와 SSE(SERVER-SENT EVENTS)에 초점을 맞춰 설명합니다.
STDIO
STDIO 서버는 MCP(Machine Communication Protocol) 서버의 모든 기능을 지원합니다. 이를 사용하면 다음과 같은 장점이 있습니다:
명령줄 도구 및 데스크 ...
6월 8일 23:05에 게시됨
개푸시(GeTui) 푸시 알림 통합 가이드
개푸시 공식 문서: https://docs.getui.com/getui/server/rest_v2/push/
먼저 개푸시 공식 계정을 신청하고, 앱을 등록하여 AppID, AppKey, AppSecret, MasterSecret을 획득합니다.
통합 가이드
설정 파일 작성
.yml 파일 수정
pushConfig:
appId: OokKLlwRjU7tJMccVVra72
appKey: f8C6lK7OGu1115ckOfVxD8
masterSecret: aTxslPiUJy9kzzZaPONL26
appSecret: sAoJ ...
6월 1일 22:26에 게시됨
Java/SpringBoot + Maven에서 Logback 활용 가이드
의존성 추가
일반 Java + Maven 프로젝트의 경우
다음 의존성을 수동으로 추가해야 합니다.
<properties>
<logback.version>1.2.3</logback.version>
<slf4j.version>1.7.30</slf4j.version>
</properties>
<dependencies>
<dependency>
<groupId>org.slf4j< ...
6월 1일 11:46에 게시됨
Spring Boot 기반 Kafka 메시지 처리 구현
Kafka 통합을 위한 Spring Boot 설정
Spring Boot 애플리케이션에서 Apache Kafka와의 통신을 구현하기 위해선 적절한 의존성 추가와 구성이 필요하다. 본 문서는 인증 보안(SASL/SCRAM)이 적용된 Kafka 클러스터와의 연결부터, 메시지 송수신 로직 구현까지를 다룬다.
의존성 설정 (Maven)
Kafka 통신을 위해 spring-kafka 모듈을 프로젝트에 포함시킨다.
<dependency ...
5월 26일 18:28에 게시됨
Redis 기초 개념과 활용 방법
Redis 개요
대규모 트래픽 처리의 핵심 과제는 다음과 같습니다:
수백만 사용자의 동시 접속
초당 수십만 건 이상의 요청 처리
기존 관계형 데이터베이스는 조인 연산 등 강력한 기능을 제공하지만 성능 한계가 명확합니다. 특히 디스크 I/O 병목 현상과 확장성 부족으로 인해 대용량 분산 환경에서 어려움을 겪습니다.
이러한 문제를 해결하기 위해 등장한 것이 NoSQL입 ...
5월 25일 21:40에 게시됨
Spring Boot에 Swagger 2 통합을 통한 REST API 문서 자동 생성
Swagger 2란?
Swagger 2는 RESTful 웹 서비스의 설계, 문서화, 테스트를 지원하는 강력한 오픈소스 프레임워크입니다. Spring Boot 애플리케이션과 쉽게 통합되어 API 문서를 자동으로 생성하고, 브라우저 기반 UI를 통해 실시간으로 API를 테스트할 수 있습니다.
주요 어노테이션 소개
@Api: 컨트롤러 클래스에 적용하여 그룹화된 API의 용도를 설명합니다.
@Ap ...
5월 25일 05:12에 게시됨
Spring Boot에서 JPA Auditing 기능 활용하기
Auditing 활성화 설정
JPA Auditing 기능을 사용하려면 먼저 설정 클래스에 @EnableJpaAuditing 어노테이션을 추가해야 합니다.
package com.example.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
@Configuration
@EnableJpaAuditing
public class JpaAuditingConf ...
5월 20일 20:35에 게시됨