Spring MVC + Mybatis CRUD Example
Spring MVC와 Mybatis를 사용하여 CRUD를 설정부터 구현하는 과정을 천천히 서술할 예정이다.
여기서 저는 com.java.mb로 생성하였는데 자신이 알아볼 수 있도록 만들면 됩니다. (mb는 mabatis를 저의 임의대로 줄인 것입니다.)
Directory 구조를 보면서 하시는 것이 좋다고 판단하여 가져오게 되었습니다.
pom.xml 설정
root-context.xml 설정
pom.xml 설정 Spring MVC로 Project를 생성한다면 제일 하단에 pom.xml이 있고 이곳의 pom.xml tab의 영역 안에다가 설정해 준다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 <dependency > <groupId > mysql</groupId > <artifactId > mysql-connector-java</artifactId > <version > 6.0.6</version > </dependency > <dependency > <groupId > org.mybatis</groupId > <artifactId > mybatis</artifactId > <version > 3.4.1</version > </dependency > <dependency > <groupId > org.mybatis</groupId > <artifactId > mybatis-spring</artifactId > <version > 1.3.0</version > </dependency > <dependency > <groupId > org.springframework</groupId > <artifactId > spring-jdbc</artifactId > <version > ${org.springframework-version}</version > </dependency > <dependency > <groupId > org.springframework</groupId > <artifactId > spring-test</artifactId > <version > ${org.springframework-version}</version > </dependency > <dependency > <groupId > org.bgee.log4jdbc-log4j2</groupId > <artifactId > log4jdbc-log4j2-jdbc4</artifactId > <version > 1.16</version > </dependency >
이렇게 pom.xml을 설정을 하고 저장을 하면 spring-mvc에서 Library들을 찾아서 다운을 받는다.
root-context.xml root-context.xml은 Database와 Mybatis를 연결하기 위한 설정들을 한다.
namespace tab에서 aop
, beans
, context
, jdbc
, mybatis-spring
를 체크 해야한다.
source tab에다가 아래의 내용을 설정해주면 된다.
beans안의 xmlns는 namespace에서 체크를 해주면 자동으로 생겨난다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns ="http://www.springframework.org/schema/beans" xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop ="http://www.springframework.org/schema/aop" xmlns:context ="http://www.springframework.org/schema/context" xmlns:jdbc ="http://www.springframework.org/schema/jdbc" xmlns:mybatis-spring ="http://mybatis.org/schema/mybatis-spring" xsi:schemaLocation ="http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd http://mybatis.org/schema/mybatis-spring http://mybatis.org/schema/mybatis-spring-1.2.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd" > <bean id ="dataSource" class ="org.springframework.jdbc.datasource.DriverManagerDataSource" > <property name ="driverClassName" value ="net.sf.log4jdbc.sql.jdbcapi.DriverSpy" > </property > <property name ="url" value ="jdbc:log4jdbc:mysql://127.0.0.1:3306/springmember?useSSL=false& serverTimezone=UTC" > </property > <property name ="username" value ="ID" > </property > <property name ="password" value ="PW" > </property > </bean > <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:mappers/**/*Mapper.xml" > </property > </bean > <bean id ="sqlSession" class ="org.mybatis.spring.SqlSessionTemplate" destroy-method ="clearCache" > <constructor-arg name ="sqlSessionFactory" ref ="sqlSessionFactory" > </constructor-arg > </bean > <context:component-scan base-package ="com.java.dao" > </context:component-scan > <context:component-scan base-package ="com.java.service" > </context:component-scan > </beans >