스프링 트랜잭션 관리 - @Transactional 어노테이션 활용
트랜잭션 관리 개요
트랜잭션은 데이터베이스 작업의 단위로, 여러 개의 연산을 하나의 논리적인 작업單位로 묶습니다. 모든 연산이 성공하면 커밋(commit)되고, 하나라도 실패하면 롤백(rollback)되어 이전 상태로 복구됩니다.
사례: 부서 삭제 시 연관 데이터 처리
부서를 삭제할 때 해당 부서에 속한 직원들도 함께 삭제해야 하는 경우가 있습니다. 이때 트랜잭션을 ...
6월 29일 16:08에 게시됨
MyBatis 실행 흐름 분석
MyBatis 실행 과정 상세 분석
MyBatis를 사용하는 개발자라면 누구나 알지만, MyBatis의 SQL 실행 흐름에 대해 깊이 이해하고 있는 사람은 많지 않습니다. 본 기사를 통해 다음 내용을 학습할 수 있습니다:
Mapper 인터페이스와 매핑 파일의 바인딩 방식
MyBatis에서 SQL 문장 실행 흐름
사용자 정의 파라미터 설정 핸들러(typeHandler) 구현 방법
사용자 정의 결과 집합 ...
6월 29일 00:11에 게시됨
Java 기반 스프링부트/SSM + Vue + 유니앱을 활용한 향정부 관리 시스템 상세 설계 및 구현
시스템 소개
본 시스템은 현대적인 웹 기술을 활용하여 향정부의 업무 효율성을 높이기 위한 종합 관리 솔루션입니다. 전통적인 관리 방식의 한계를 극복하고 디지털 전환을 실현하는 데 초점을 맞추어 설계되었습니다.
기술 스택
백엔드 프레임워크: 스프링부트
스프링부트는 톰캣, 제티, 언더토우와 같은 내장 서버를 포함하고 있어 추가 설치 없이 바로 사용할 수 있습 ...
6월 27일 03:40에 게시됨
Java 핵심 개념과 Spring 프레임워크 완벽 정리
1. Java 기본 문법
1.1 개발 환경 단축키
IDE에서 자주 사용하는 단축키를 정리합니다.
단축키기능
soutSystem.out.println() 자동 완성
Ctrl+/한 줄 주석 토글
Ctrl+Shift+/여러 줄 주석 토글
1.2 식별자 규칙
변수, 클래스, 메서드 이름 작성 시 준수해야 할 규칙입니다.
사용 가능 문자: 영문 소문자(a-z), 숫자(0-9), 밑줄(_), 달러 기호($)
숫자로 시작할 수 없 ...
6월 26일 00:04에 게시됨
MyBatis를 활용한 데이터베이스 CRUD 구현
MyBatis 개요MyBatis는 JDBC의 복잡한 과정을 추상화하여 데이터베이스 연동을 단순화하는 ORM 프레임워크입니다. @Mapper 어노테이션이 붙은 인터페이스는 SQL 매퍼로 인식되며, 애플리케이션과 데이터베이스 간의 원활한 통신을 담당합니다.프로젝트 환경 설정의존성 추가빌드 도구에 다음 의존성을 포함합니다:mybatis-spring-boot-startermysql-connector-java데이터소 ...
6월 24일 20:14에 게시됨
Spring Cloud 기반 전자상거래 마이크로서비스 아키텍처 설계 및 사용자 모듈 구현
개발 환경 및 아키텍처 개요
본 프로젝트는 Spring Cloud를 활용한 마이크로서비스 아키텍처(MSA)를 기반으로 설계되었습니다. 시스템은 크게 서비스 레지스트리(Eureka), API 게이트웨이, 그리고 비즈니스 로직을 처리하는 사용자 서비스와 상품 서비스로 분리됩니다. 각 서비스는 독립적인 데이터베이스를 소유하며, 서비스 간 통신은 Feign 클라이언트를 통해 이루어집 ...
6월 19일 22:16에 게시됨
자바 기반 Spring Boot + Vue.js + UniApp를 활용한 애니메이션 웹사이트 개발 사례 및 소스코드 배포 안내
프로젝트 개요
이 프로젝트는 Spring Boot를 백엔드 프레임워크로, Vue.js를 전면 프론트엔드 프레임워크로, 그리고 UniApp를 통해 모바일 웹 및 네이티브 애플리케이션을 구현하는 통합 애니메이션 정보 포털 사이트입니다. 사용자 중심의 콘텐츠 관리, 게시판 시스템, 로그인 인증, 세션 관리 등 핵심 기능을 포함하며, 실제 운영 환경에서 사용 가능한 수준의 코드 구 ...
6월 19일 00:52에 게시됨
Maven을 활용한 MyBatis 코드 자동 생성
MyBatis는 반자동 ORM 프레임워크로 분류됩니다. 따라서 개발자는 Mapping 파일을 직접 작성해야 하는 경우가 많은데, 이 작업은 실수하기 쉽습니다. mybatis-generator 플러그인을 사용하면 MyBatis에서 필요로 하는 DAO, Bean, Mapper XML 파일을 자동으로 생성할 수 있습니다.
본 글에서는 Eclipse IDE를 기준으로 설명하겠습니다.
데이터베이스 테이블 생성
CREATE T ...
6월 16일 23:28에 게시됨
마이바티스 동적 SQL 처리 기법
마이바티스 동적 SQL 처리 기법
쿼리 조건에 따라 SQL 동적 생성 방법
1. 동적 SQL 실습 사례
회원 정보 검색 시스템
1.1 데이터베이스 테이블 생성
-- 회원 테이블
CREATE TABLE members(
member_id INT PRIMARY KEY auto_increment,
member_nick VARCHAR(20) NOT NULL UNIQUE,
member_gender CHAR(2) NOT NULL,
member_age INT NOT NULL,
member_city VARCHAR(3 ...
6월 14일 23:10에 게시됨
MyBatis 프레임워크 핵심 구성 및 동적 SQL 활용
MyBatis 개요
MyBatis는 JDBC를 기반으로 한 ORM 프레임워크로, 데이터베이스 연동을 간소화합니다. Apache iBatis에서 발전했으며 현재는 GitHub에서 관리됩니다.
환경 설정 및 의존성
핵심 JAR
mybatis-3.5.6.jar: 핵심 기능 포함
필수 의존성
asm-7.0.jar: 바이트코드 분석
cglib-3.3.0.jar: 동적 프록시 구현
slf4j-api-1.7.30.jar: 로깅 인터페이스
데 ...
6월 11일 02:06에 게시됨