Gradle 의존성 추가
build.gradle 파일의 dependencies 블록에 MyBatis, DB 드라이버, 기타 필요 의존성을 추가한다(아래는 MySQL 예시. 사용하는 DB 종류에 따라 runtimeOnly 부분을 변경하면 된다).
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:3.0.3'
runtimeOnly 'mysql:mysql-connector-java:8.0.32' // 사용 DB에 맞게 변경
// lombok 등 추가 설정
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
}
application.properties 설정
src/main/resources/application.properties 파일에 다음과 같이 데이터베이스 및 마이바티스 설정을 입력한다.
# 데이터베이스 설정
spring.datasource.url=jdbc:mysql://localhost:3306/testdb?serverTimezone=UTC&characterEncoding=UTF-8
spring.datasource.username=testuser
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# MyBatis 설정
mybatis.type-aliases-package=com.example.demo.model
mybatis.mapper-locations=classpath:mapper/**/*.xml
Mapper 인터페이스 및 XML 작성

-
Java 인터페이스(
UserMapper.java)
package com.example.demo.mapper;
import com.example.demo.model.User;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface UserMapper {
User selectUserById(Long id);
}
-
MyBatis XML Mapper(
src/main/resources/mapper/UserMapper.xml)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.demo.mapper.UserMapper">
<select id="selectUserById" resultType="com.example.demo.model.User">
SELECT * FROM user WHERE id = #{id}
</select>
</mapper>
간단한 모델 클래스 예시
package com.example.demo.model;
public class User {
private Long id;
private String name;
// getter, setter 등 생략
}
요약
-
Gradle 의존성 등록
-
데이터베이스 및 MyBatis 설정
-
Mapper Java 인터페이스, XML 매퍼 작성
-
모델 클래스 구성
실제 서비스 개발 시에는 Mapper, DAO, Service, Controller 레이어로 분리 설계하는 것이 일반적이다.