MyBatis XML 매핑 태그 백서: SQL 정의부터 동적 쿼리 구조화까지
1. SQL 명령어 정의 태그
기본적인 데이터베이스 조작 문을 XML 파일 내에 선언할 때 사용하는 태그입니다. 각 쿼리 종류별로 고유한 속성을 가지며, 파라미터와 반환값의 타입을 명확히 정의해야 합니다.
<select>: 데이터를 조회하는 문장. id는 네임스페이스 내 고유 식별자, parameterType은 입력값 유형, resultType 또는 resultMap은 조회 결과를 매핑할 대상 ...
10월 2일 00:57에 게시됨
MyBatis의 다양한 설정 방식 분석
전통적인 XML 기반 설정
MyBatis 초기 설계에서 가장 기본적인 방식은 SQL을 별도의 XML 파일에 정의하고, 이를 구성 파일을 통해 로드하는 구조입니다. 이 방식은 명시적이고 직관적이지만, 설정 파일이 많아지면 관리가 어려워집니다.
public class XmlMain {
public static void main(String[] args) {
try (InputStream configStream = Resources.getRes ...
9월 29일 17:03에 게시됨
스프링부트와 Vue.js 기반 커뮤니티 쓰레기 분류 관리 시스템 구축
개요커뮤니티 단위의 쓰레기 분류 관리 플랫폼은 주거 지역 내 재활용 및 폐기물 처리 효율성을 극대화하는 것을 목표로 한다. 본 시스템은 백엔드에 스프링부트, 프론트엔드에 Vue.js를 적용하여 RESTful 아키텍처 기반의 웹 애플리케이션을 구현한다.
백엔드 아키텍처스프링부트 핵심 구성스프링부트는 자동 설정(Auto-configuration) 메커니즘을 통해 개발 환경 구성의 ...
9월 13일 04:06에 게시됨
MyBatis 캐시 기능 분석
MyBatis는 데이터베이스 쿼리 성능을 향상시키기 위해 캐시 기능을 제공합니다. 이 기능은 데이터의 일관성을 유지하기 위해 주의 깊게 관리해야 합니다.
MyBatis 캐시 관련 주요 개념
MyBatis 캐시: 데이터베이스 쿼리를 최적화하는 역할을 하지만, 오래된 데이터가 포함될 수 있습니다.
SqlSession: 데이터베이스와의 연결 세션을 나타내며, 데이터베이스에 대한 작업을 ...
8월 29일 15:31에 게시됨
MyBatis에서 엔티티 간 관계 매핑 완벽 가이드
관계형 데이터베이스의 3가지 연결 방식
관계형 데이터베이스에서 테이블은 서로 연결되어 있으며, 크게 다음 세 가지 방식으로 구분됩니다.
일대일(1:1) : 한 레코드가 다른 테이블의 단 한 레코드와만 연결됩니다. 예: 사용자 ↔ 주민등록번호
일대다(1:N) : 한 레코드가 다른 테이블의 여러 레코드와 연결되지만, 반대는 불가능합니다. 예: 부서 ↔ 직원
다대다(M:N) : ...
8월 22일 06:03에 게시됨
MyBatis에서의 배치 처리
XML 배치 쿼리
collection: 반복할 컬렉션 지정 (list, array, map 세 가지 경우) !!!!주석으로 SQL을 사용하는 경우, 여기에 mapper 메서드의 컬렉션 이름을 입력하세요.
item: 현재 반복되는 요소를 지정된 변수에 할당 (for 루프의 i와 동일)
separator: 각 요소 사이의 구분자
open: 모든 결과를 연결하는 시작 문자
close: 모든 결과를 연결하는 종료 문자
index: ...
8월 20일 11:28에 게시됨
SSM 프레임워크와 EasyUI를 활용한 기업용 OA 시스템 구축
1. Spring 프레임워크 핵심 기능 구현1.1 의존성 주입(DI) 구조 설계Spring의 IoC 컨테이너는 애플리케이션 구성 요소 간 결합도를 낮추는 핵심 기술입니다. 아래 예제는 어노테이션 기반 자동 주입 구현 방식을 보여줍니다:@Service
public class AccountService {
@Autowired
private AccountRepository accountRepo;
// 서비스 로직 구현
}AccountService ...
8월 11일 07:46에 게시됨
Spring Boot 프로젝트에 Generic Mapper 통합 방법
기존에는 mapper.xml 파일을 통해 직접 SQL을 작성해야 했지만, 일반적인 쿼리 작업을 위해 Generic Mapper를 도입한 이후로는 더 이상 복잡한 XML 설정 없이도 효율적으로 데이터베이스 작업이 가능해졌습니다. 이 라이브러리는 자주 사용되는 기본 쿼리(예: selectOne, insert, update, delete)를 미리 구현해두었기 때문에 개발 속도가 크게 향상됩니다.
실제 프로젝 ...
8월 3일 07:35에 게시됨
기반 기술 스택을 활용한 학생 성장 평가 시스템 구축 - SpringBoot, Vue.js, MyBatis, MySQL 통합 솔루션
요약
정보기술의 급속한 발전에 따라 교육 분야의 디지털 전환은 필수적인 흐름이 되었다. 기존의 과정 평가 방식은 처리 효율이 낮고 데이터 관리가 복잡하여 현대 대학의 정밀한 교육 평가 요구를 충족시키지 못한다. 이에 따라 응용 지향적 학부 교육을 실시하는 특정 대학에서는 학생 학습 과정을 동적으로 추적하고 과학적으로 평가할 수 있는 효과적인 시스템이 절실 ...
8월 3일 07:03에 게시됨
MyBatis 기반 CRUD 구현 및 핵심 속성 활용 가이드
1. MyBatis를 이용한 CRUD 기초 구현
MyBatis를 사용하여 데이터베이스의 기본적인 생성(Create), 조회(Read), 수정(Update), 삭제(Delete) 기능을 구현하는 방법은 인터페이스 정의, XML 매퍼 작성, 그리고 이를 실행하는 서비스 로직으로 구성됩니다.
MemberMapper 인터페이스 정의
public interface MemberMapper {
void addMember(Member member);
...
7월 29일 20:08에 게시됨