티스토리 뷰

공장 (factory)/- Programming..

[Java] Spring + mybatis + Oracle/mysql settings

공부하는 나부랭이, 무중력고기 2015.06.05 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 List getUserList() {
		return sqlSessionFactory.selectList("user.getUserList", null);
	}

}




   UserService.java

import java.util.List;
import xxx.xxx.UserDTO;

public interface UserService {
	public List getUserList();
	
}




   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 List getUserList() {
		return userDAO.getUserList();
	}

}




   UserController.java 에서 사용할 땐, 다음과 같이 사용한다.

@Resource(name = "UserService")
private UserService userService;




댓글
댓글쓰기 폼
Total
1,376,630
Today
194
Yesterday
628
«   2019/09   »
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          
글 보관함