BackEND/Java

spring boot gradle mybatis 연동

mingmingIT 2020. 12. 9. 14:42

1. build.gradle

아래와 같이 추가하고 refresh gradle project 

dependencies {
    // MyBatis
    compile "org.springframework.boot:spring-boot-starter-jdbc:2.0.1.RELEASE"
    compile "mysql:mysql-connector-java:5.1.46"
    compile "org.mybatis.spring.boot:mybatis-spring-boot-starter:1.3.1"
    compile "org.mybatis:mybatis-spring:1.3.1"
    compile "org.mybatis:mybatis:3.4.5"
}

 

2. AbstractMapper Create

query 를 수행하기 위해 Spring의 Mybatis 연동 지원 공통 클래스를 만든다. 

AbstractMapper.java
0.01MB

3. UserMapper Create

package com.mapper;

import java.util.HashMap;
import org.springframework.stereotype.Repository;
import com.common.mapper.AbstractMapper;

@Repository("userMapper")
public class UserMapper extends AbstractMapper{
	public String getUserid(HashMap<String, Object> param) {
		return selectOne("mapper.UserMapper.getUserid", param);
	}
}

AbstractMapper 를 상속받아서 위와 같이 Mapper.java를 만든다.

4. mapper xml Crete

<?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="mapper.UserMapper">
    
    <select id="getUserid" parameterType="java.util.HashMap" resultType="java.lang.String">
		SELECT u.user_id
		FROM userinfo u
		WHERE u.user_id = #{user_id}
    </select>
    
</mapper>

UserMapper 에서 호출을 할때는 "namespace"를 맞춰서 호출을 한다.

5. application.yaml 수정

mapper 경로를 찾을수 있게 아래와 같이 경로를 넣어준다.

mybatis:
    mapper-locations: classpath:mapper/**/**.xml

'BackEND > Java' 카테고리의 다른 글

md5, sha256 암호화 방법과 로그인 프로세스  (0) 2020.12.11
spring boot controller request multiple  (0) 2020.12.10
spring boot gradle 셋팅  (0) 2020.12.04
utc 날짜 파싱하는 방법  (0) 2019.05.03
자주 쓰는 형변환 정리  (0) 2017.11.30