<!-- MySQL - JDBC 연동에 필요한 라이브러리 추가 -->
<!-- 1. JDBC 연동에 필요한 기능을 제공하는 spring-jdbc 라이브러리(기존 스프링버전 사용) -->
<!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${org.springframework-version}</version>
</dependency>
<!-- 2. MySQL-Connector 추가 -->
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.29</version>
</dependency>
<!-- 3. HikariCP 라이브러리(Tomcat DBCP 대용으로 사용 가능한 커넥션 풀) -->
<!-- Tomcat DBCP 에 비해 가볍고, 빠르고, 안정적인 처리가 가능한 라이브러리 -->
<!-- mvcrepository.com 대신 https://github.com/brettwooldridge/HikariCP 링크 접속 -->
<!-- Java 8 maven artifact (maintenance mode) 항목 사용 -->
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
<version>4.0.3</version>
</dependency>
<!-- 4. MyBatis 활용에 필요한 라이브러리 추가 -->
<!-- 4-1) MyBatis 기본 라이브러리 -->
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.11</version>
</dependency>
<!-- 4-2) MyBatis - Spring 연동 라이브러리 -->
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>2.0.7</version>
</dependency>
파일을 연 후 아래쪽 탭 중 Namespaces 탭 클릭하여 context, mybatis-spring 체크
<!-- Root Context: defines shared resources visible to all other web components -->
<!-- HikariCP 라이브러리 사용을 위한 설정 -->
<!-- 1. HikariCP 를 활용한 DB 접속 정보 설정을 위해 HikariConfig 객체 설정(JDBC 기본 설정) -->
<bean id="hikariConfig" class="com.zaxxer.hikari.HikariConfig">
<property name="driverClassName" value="com.mysql.cj.jdbc.Driver"></property>
<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/ooo"></property>
<property name="username" value="root"></property>
<property name="password" value="1234"></property>
</bean>
<!-- 2. HikariCP 의 DataSource 객체 생성을 위해 HikariConfig 객체 전달 -->
<bean id="dataSource" class="com.zaxxer.hikari.HikariDataSource" destroy-method="close">
<constructor-arg ref="hikariConfig"></constructor-arg>
</bean>
<!-- Connection 객체 생성 및 쿼리 전달, 결과 리턴 등의 작업 수행할 SQLSessionFactory 객체 설정 -->
<!-- MyBatis - Spring 연결 담당하며, 내부적으로 SQLSession 객체를 통해 작업 수행 -->
<!-- 주의! 이전에 이미 DataSource 객체 설정이 완료되어 있어야 함 -->
<!-- 주의! Mapper.xml 파일 생성 시 src/main/resource 내의 패키지에 파일 생성! (폴더 아님) -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="configLocation" value="classpath:/mybatis-config.xml"></property>
<property name="mapperLocations" value="classpath:/com/ksh/ooo/mapper/*Mapper.xml"></property>
</bean>
<!-- MyBatis 연동에 사용될 객체들의 패키지 위치 지정(기본 루트 패키지 지정) -->
<mybatis-spring:scan base-package="com.ksh.ooo"/>
<beans> 태그 내에 위와 같이 설정
<!-- 컨트롤러(@Controller) 를 비롯한 어노테이션을 통해 자동 주입될 클래스가 포함되는 패키지 지정 -->
<context:component-scan base-package="com.ksh.ooo" />
<!-- <context:component-scan base-package="com.ksh.ooo.controller" /> -->
<!-- <context:component-scan base-package="com.ksh.ooo.service" /> -->
Preferences - XML - XML Catalog
Add 버튼 클릭하여 첫번째 항목 추가
Location : http://mybatis.org/dtd/mybatis-3-mapper.dtd
Key : -//mybatis.org//DTD Mapper 3.0//EN
Add 버튼 클릭하여 두번째 항목 추가
Location : http://mybatis.org/dtd/mybatis-3-config.dtd
Key : -//mybatis.org//DTD Config 3.0//EN
User Specified Entries 항목에서 두 개의 DTD 항목 생성 확인
XML 파일 생성
파일명(XXXMapper.xml) 입력 후 Next
Create file using a DTD 선택 후 Next
Select XML Catalog entry 선택 후 User Specified Entries 목록에서
mybatis-3-mapper.dtd 클릭 후 Next
Finish 클릭
<?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.ksh.ooo.mapper.MemberMapper">
<!-- SQL 구문 실행을 위한 태그 설정 -->
</mapper>
=> XXXMapper 인터페이스 지정(패키지명 포함)
src/main/resources/mybatis-config.xml 파일 생성(DTD 항목 중 mybatis-3-config.dtd 활용)