참고 URL :
https://antdev.tistory.com/30
https://inma.tistory.com/155
https://inma.tistory.com/156?category=1070891
MSSQL 연동 참고 :
https://taesan94.tistory.com/108
dependencies {
//mybatis 사용을 위해 추가
compile 'org.mybatis.spring.boot:mybatis-spring-boot-starter:2.1.0'
compile 'org.springframework.boot:spring-boot-starter-jdbc'
compile 'mysql:mysql-connector-java'
}
메인클래스에 맵퍼 스캔부분 추가
=====================================================================================================================================================
@SpringBootApplication
@MapperScan(value={"com.securus.ciim.**.mapper"})
=====================================================================================================================================================
=====================================================================================================================================================
@Bean
public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception {
SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
sessionFactory.setDataSource(dataSource);
Resource[] res = new PathMatchingResourcePatternResolver().getResources("classpath:mapper/*Mapper.xml");
sessionFactory.setMapperLocations(res);
return sessionFactory.getObject();
}
=====================================================================================================================================================
맵퍼스캔과 sqlSessionFactory 가 추가된 메인클래스
=====================================================================================================================================================
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.core.io.Resource;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import javax.sql.DataSource;
@SpringBootApplication
@MapperScan(value={“com.securus.ciim.**.mapper”})
public class CiimApplication {
public static void main(String[] args) {
SpringApplication.run(CiimApplication.class, args);
}
@Bean
public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception {
SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
sessionFactory.setDataSource(dataSource);
Resource[] res = new PathMatchingResourcePatternResolver().getResources("classpath:mapper/*Mapper.xml");
sessionFactory.setMapperLocations(res);
return sessionFactory.getObject();
}
}
=====================================================================================================================================================
인터페이스 클래스로 만들어야 함
Mapper , Repository 어노테이션 추가
=====================================================================================================================================================
package com.securus.ciim.main.mapper;
import com.securus.ciim.main.vo.AdminVo;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
import java.util.HashMap;
import java.util.List;
@Repository
@Mapper
public interface MainMapper {
List<HashMap<String,String>> loginCheck(AdminVo adminVo);
}
=====================================================================================================================================================
namespace 는 위에서 생성한 인터페이스의 경로와 일치하도록 작성( 공백, 오탈자 주의)
=====================================================================================================================================================
<?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.securus.ciim.main.mapper.MainMapper"><!--namespace를 통해 UserDAO와 연결합니다. -->
<select id="loginCheck" resultType="HashMap">
SELECT * FROM buy_user
</select>
</mapper>
=====================================================================================================================================================
파일명 : mybatis-config.xml
경로 : main/resocures 밑에 위치
=================================================================================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<!--mapUnderscoreToCamelCase : 스네이크 카멜 변환 -->
<!--callSettersOnNulls : 쿼리 결과 필드가 null인 경우, 누락이 되서 나오는데 누락이 안되게 하는 설정-->
<!--jdbcTypeForNull : 쿼리에 보내는 파라메터가 null인 경우, 오류 발생하는 것 방지 예) ##{search.user}-->
<configuration>
<settings>
<setting name="mapUnderscoreToCamelCase" value="true"/>
<setting name="callSettersOnNulls" value="true"/>
<setting name="jdbcTypeForNull" value="NULL"/>
</settings>
</configuration>
=================================================================================================================