티스토리 뷰
Spring STS + mybatis + mySQL 개발환경 만들기 (mybatis-congif사용)
LunaStratos 2017. 10. 10. 12:29pom.xml에서 다음을 추가한다.
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.44</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.5</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.3.11.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-test -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>4.3.11.RELEASE</version>
<scope>test</scope>
</dependency>
<!-- log -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.7.5</version>
</dependency>
<!-- log -->
root-context에 들어가서 namespaces에 다음과 같이 체크 후 다음 코드 추가
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:3306/database"></property>
<property name="username" value="root"></property>
<property name="password" value=""></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>
</bean>
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"></property>
</bean>
<bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg ref="sqlSessionFactory"></constructor-arg>
</bean>
<property name="url" value="jdbc:mysql://localhost:3306/database"></property>
이 부분은 localhost:3306 이 부분은 자신의 서버주소 + 포트를, database는 database이름을 쓴다.
database는 만들거나 있는 것을 쓰면 된다.
<property name="username" value="root"></property> 에서 root는 id를
<property name="password" value="password"></property> 에서 password는 암호를 적는다
그리고 나서 src/main/resources에 mybatis-config.xml파일을 만들고 다음과 같이 추가
<?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">
<configuration>
<typeAliases>
<typeAlias type="com.testdrive.test.VO.Account" alias="account" />
</typeAliases>
<mappers>
<mapper resource="mapper/accountMapper.xml" />
</mappers>
</configuration>
<typeAlias type="com.testdrive.test.VO.Account" alias="account" /> 부분은 VO가 들어가는 부분이다.
각자 맞는 VO를 생성후 위치를 설정해 준다
<mapper resource="mapper/accountMapper.xml" /> 부분은 sql문구가 들어가는 mapper.xml부분이다.
mapper는 아래에서 생성해 준다.
다음과 같이 mapper폴더를 src/main/resources에 만들고
<mapper resource="mapper/accountMapper.xml" /> 에서 만든 accountMapper.xml 이름 파일을 만든다.
추가로 mapper파일을 만든다면 mabatis-config에서 추가된 mapper이름을 설정해준다.
<?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.testdrive.test.Mapper.accountMapper">
<insert id="register" parameterType="account">
insert into
account(
uid,
password,
name
)
values
(
#{uid},
#{password},
#{name}
)
</insert>
<select id="list" resultType="account">
select uid, name from account
</select>
<select id="login" parameterType="account" resultType="account">
select
uid, password from account where uid = #{uid} and password =
#{password}
</select>
<select id="idcheck" parameterType="string" resultType="string">
select
uid
from
account
where uid = #{uid}
</select>
</mapper>
<mapper namespace="com.testdrive.test.Mapper.accountMapper">
이 부분은 src/main/java에서 만든 accountMapper란 이름의 interface파일이다.
이렇게 폴더 구조를 보는게 더 편할것이다.
src/main/java에 다음과 같이 VO와 mapper파일이 존재한다.
이걸 mabatis-config에서 VO를
mapper에서 interface파일을 불러오는 것이다.
일종의 리모컨처럼
'프로그래밍 > spring' 카테고리의 다른 글
[spring] json을 받을때 파라메터를 모를때 방법 (0) | 2017.10.12 |
---|---|
스프링 Spring 에서 ArrayList을 사용해서 json 만들기 (0) | 2017.10.10 |
스프링 Spring AJAX 406 Not Acceptable 에러시 해결법 (0) | 2017.10.10 |
spring log4j 와 debug 설정 방법 (0) | 2017.10.10 |
Spring STS + mybatis + mariaDB 개발환경 만들기 (mybatis-congif사용) (0) | 2017.10.10 |