티스토리 뷰
[Java] Spring + mybatis + Oracle/mysql settings
무중력인간 2015. 6. 5. 20:30한다 한다 해놓고 미뤄왔었는데, 이제서야 정리한다.
라이브러리 관리툴로는 maven을 사용한다고 전제한다.
Gradle이나 다른 툴을 사용한다면 http://mvnrepository.com에서 검색해서 집어넣자.
pom.xml
org.springframework spring-jdbc 4.1.6.RELEASE org.springframework spring-orm 4.1.6.RELEASE org.mybatis mybatis 3.3.0 org.mybatis mybatis-spring 1.2.2 commons-dbcp commons-dbcp 1.4 mysql mysql-connector-java 5.1.35 com.oracle ojdbc14 10.2.0.4.0 mesir-repo http://mesir.googlecode.com/svn/trunk/mavenrepo
bean 설정
Oracle과 mysql 설정을 두 개 넣어놨는데, 둘중 하나만 사용한다면 주석 처리를 해야 한다.
만약 둘 다 사용하고 싶다면 다른 하나의 id를 다르게 주고, SqlSessionFactory/SqlSessionTemplate/Transaction 부분을 따로 설정해준다.
sql-map-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">
SqlSessionFactory 설정 부분에서 mapperLocations를 지정해줬기 때문에 sql-map-config.xml에서 mapper에 대한 부분을 따로 설정해줄 필요는 없다.
간단하게 alias나 지정해주는 정도.
좀더 뭔가를 써먹고 싶다면 mybatis 가이드(http://mybatis.github.io/mybatis-3/ko)를 참고하자.
maaper.xml
<?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">
UserDAO.java
import java.util.List; import javax.annotation.Resource; import xxx.xxx.UserDTO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; import org.apache.ibatis.session.SqlSession; @Repository("UserDAO") public class UserDAO { @Autowired @Resource(name = "sqlSessionTemplate") private SqlSession sqlSessionFactory; public ListgetUserList() { return sqlSessionFactory.selectList("user.getUserList", null); } }
UserService.java
import java.util.List; import xxx.xxx.UserDTO; public interface UserService { public ListgetUserList(); }
UserServiceImpl.java
import java.util.List; import javax.annotation.Resource; import org.springframework.stereotype.Service; import xxx.xxx.UserDAO; import xxx.xxx.UserDTO; @Service("UserService") public class UserServiceImpl implements UserService{ @Resource(name = "UserDAO") private UserDAO userDAO; @Override public ListgetUserList() { return userDAO.getUserList(); } }
UserController.java 에서 사용할 땐, 다음과 같이 사용한다.
@Resource(name = "UserService") private UserService userService;
'공장 (factory) > - Programming..' 카테고리의 다른 글
[Spring] ajax 사용 시, 한글 깨질 때. (0) | 2015.07.07 |
---|---|
[Ajax/Java/Spring] Spring에서 Ajax로 JSON 데이터 넘기기 (0) | 2015.07.07 |
Jenkins, Maven 프로젝트 빌드하기 (0) | 2015.06.03 |
윈도우에 Jenkins 설치하기 (0) | 2015.06.03 |
[Java] iText를 이용하여 HTML 텍스트를 PDF로 변환하기. (35) | 2015.01.06 |