Spring Boot와 Vue/UniApp 프로젝트 기반 구조 설계

표준화된 응답 객체 설계API 응답의 일관성을 위해 제네릭 기반의 결과 래퍼 클래스를 구현합니다. 상태 코드, 메시지, 실제 데이터를 포함하며, 다양한 생성 패턴을 정적 팩토리 메서드로 제공합니다.@Data @AllArgsConstructor(access = AccessLevel.PRIVATE) public class ApiResponse<T> { private final int status; private final String msg; pri ...

7월 23일 10:08에 게시됨

Jackson 라이브러리 핵심 가이드

Jackson은 Java 진영에서 가장 널리 채택되는 JSON 처리 엔진으로, FasterXML이 관리하고 있다. 단순한 JSON 파싱을 넘어 XML, YAML, CSV 등 다양한 포맷을 지원하며, 뛰어난 성능과 유연한 확장성으로 Spring 생태계의 사실상 표준이 되었다. 이번 글에서는 Jackson의 내부 메커니즘과 실무 활용법을 살펴본다. 핵심 모듈 구성 모듈명 Maven Artifact 역할 jackson ...

7월 23일 07:37에 게시됨

RuoYi-Vue 프레임워크 프론트엔드와 백엔드 단일 서버 통합 가이드

RuoYi-Vue와 같이 프론트엔드(Vue.js)와 백엔드(Spring Boot)가 분리된 프로젝트를 운영하다 보면, 관리 편의성을 위해 이를 하나의 JAR 파일로 통합하여 배포해야 할 때가 있습니다. 이 가이드에서는 RuoYi-Vue의 두 아키텍처를 하나로 병합하는 구체적인 절차를 다룹니다. 1. 백엔드 서비스 설정 변경 먼저 Spring Boot 백엔드에서 정적 리소스를 처리하고 화면 ...

7월 23일 03:36에 게시됨

Spring Boot 국제화(i18n) 구현을 위한 LocaleContextHolder 완벽 가이드

LocaleContextHolder는 Spring 프레임워크에서 멀티스레드 환경의 현재 스레드에 바인딩된 Locale(지역 설정) 정보를 손쉽게 획득할 수 있도록 설계된 핵심 유틸리티 클래스입니다. 이 클래스는 ThreadLocal을 래핑하여, HttpServletRequest 객체를 명시적으로 전달하지 않고도 Service 계층이나 유틸리티 클래스 등 애플리케이션의 어느 곳에서든 현재 요청의 언어 환경을 ...

7월 22일 01:55에 게시됨

VSCode에서 Java 개발 환경 설정하기 (Spring Boot 프로젝트 생성, 실행 및 디버깅)

GitHub 저장소 주소: Spring-Boot-Demo 확장 기능 설치 Java 개발에 필요한 Maven과 Spring Boot 관련 확장 기능을 포함하는 두 가지 주요 확장을 설치하면 됩니다. Visual Studio Code에서 확장 창(Ctrl+Shift+X)을 엽니다. 상점에서 "java"를 검색하여 확장 기능을 찾습니다. "Java Extension Pack"을 찾아 설치합니다. 이미 "Language Support for Java(TM) by Red ...

7월 20일 03:44에 게시됨

Spring Boot에서 Hive JDBC 연동 및 데이터 조회 구현

개요기존 데이터베이스로는 대용량 데이터 분석 시 성능 병목이 발생하는 경우가 많습니다. 이 글에서는 Spring Boot 환경에서 Hive 서버에 JDBC로 접속하여 데이터를 조회하고 처리하는 방법을 살펴봅니다. CDH(Cloudera Distribution Including Apache Hadoop) 환경을 기준으로 작성되었습니다.실행 환경구성 요소버전Spring Boot2.1.8.RELEASECDH5.15.1Hive1.1.0Hive 버 ...

7월 20일 02:11에 게시됨

Rocky Linux 9에서 RuoYi v3.9.0 전후방 분리 배포

1. RuoYi 백엔드 프레임워크 개요 RuoYi는 Spring Boot 기반의 오픈소스 관리 시스템으로, 보안 인증에 Apache Shiro를 활용하고 데이터 접근 계층에 MyBatis를 사용하며, 정적 뷰는 Thymeleaf로 구현된 경량화 조합을 특징으로 합니다. 주요 목적은 개발자가 비즈니스 로직에 집중할 수 있도록 기술 장벽을 낮추고, 프로젝트 개발 시간과 리소스 소모를 줄이는 것입니다. ...

7월 20일 01:38에 게시됨

Spring Boot 기반 대학원생 연구 조사 관리 플랫폼 구축

기술 스택 백엔드: Java 8, Spring Boot 2.x, MyBatis-Plus 프론트엔드: Vue.js 2.x, Element UI, Axios 데이터베이스: MySQL 8.0 빌드 도구: Maven 3.8+ 개발 환경: IntelliJ IDEA, Node.js 14+ 시스템 아키텍처 본 시스템은 대학원생의 연구 주제 선정, 진행 상황 추적, 결과 보고를 계적으로 관리하는 웹 기반 플랫폼이다. RESTful API 설계를 적용하여 프론트엔드와 ...

7월 19일 06:01에 게시됨

비즈니스 로직에서의 일관된 시간 처리 전략

비즈니스 애플리케이션에서 작업 시간은 단순한 타임스탬프를 넘어서, 로그 추적, 거래 일관성, 감사(Audit) 요구사항 등에 핵심적인 역할을 한다. 특히 여러 처리 단계를 포함하는 비즈니스 유닛 내에서 시간의 일관성은 데이터 신뢰도를 결정짓는 중요한 요소다. 비즈니스 처리 유닛과 시간 흐름 특성 일반적으로 비즈니스 작업은 다음과 같은 두 가지 시간적 ...

7월 18일 21:35에 게시됨

스프링 부트에서의 로컬 및 분산 로그 시스템 구성

최근 면접 과정에서 로그 관리에 대한 질문을 자주 접했고, 이에 대해 로컬 로그 출력과 전방위 분산 로깅 시스템 구성을 정리해본다. 목적은 프레임워크 내부에서 사용하는 로컬 로깅 시스템과 분산 트레이싱 기능을 소개하는 것이다. 로컬 로그는 스프링이 권장하는 Logback을 기반으로 하며, 기본적으로 최소한의 설정만으로 동작한다. 분산 로그 추적(전방 ...

7월 17일 23:51에 게시됨