2013년 7월 9일 화요일

ibatis 설정 및 간단한 구현

기본적으로 몇가지 jar들이 필요한대 그 목록은 다음과 같다.

1. ojdbc14 (oracle jdbc 라이브러리)
2. spring-orm (ibatis와 jdbc를 연결해주는 역할)
3. ibatis-sqlmap (ibatis 의 sqlmap 라이브러리)

Spring Template Project 를 사용하여 프로젝트를 생성했다면
기본적으로 maven이 포함되어 있다. pom.xml 을 수정하여 쉽게 추가가 가능하다.

참고로 Spring Template Project로 프로젝트 생성시 추가 작업으로는
Spring Library 추가 Server Library 추가가 있다.



com.oracle
    ojdbc14
    10.2.0.4.0

	


    org.springframework
    spring-orm
    ${org.springframework-version}


    org.apache.ibatis
    ibatis-sqlmap
    2.3.4.726

귀찮으면 위에꺼 가져가 쓰면 된다.
이제 몇가지 설정 파일이 필요한데 위치는 WEB-INF 밑에 classes 안에 자유롭게 배치해도 된다. 
classes 가 classpath 임.

data-context.xml 이름은 상관없다.


	   					   
	
	
		
		
		
		
	
	
	
		  
	
	      
	
	


sqlMapConfig.xml 이건 이름이 정해져있다.


		

	
        
		

usr.xml 쿼리가 들어가는 파일


		

        
	
	
	
	
	
	
	
		INSERT INTO usr(usr_uid, usr_id, usr_pw, usr_name, usr_enabled, usr_authority, usr_regdate, usr_upddate)
					VALUES
					(usr_seq.nextval, #usr_id#, #usr_pw#, #usr_name#, '1', 'ROLE_USER', sysdate, sysdate)
		
	

dao 구현
@Repository
public class UsrDao extends SqlMapClientDaoSupport {
	
	@Resource(name = "sqlMapClient") 
    public void setSuperSqlMapClient(SqlMapClient sqlMapClient){
		
        super.setSqlMapClient(sqlMapClient);
        
    } 
	
	public UsrVo selectOne(String usr_uid){
		
		return (UsrVo)getSqlMapClientTemplate().queryForObject("usr.selectOne", usr_uid);
		
	}
	
	public List selectAll(){
		
		return getSqlMapClientTemplate().queryForList("usr.selectAll");
		
	}
	
	public void insert(UsrVo usrVo) {
		
		getSqlMapClientTemplate().insert("usr.insert", usrVo);
		
	}
}
service 구현
@Service
public class UsrService {

	@Autowired
	private UsrDao usrDao;
	
	private static final Logger logger = LoggerFactory.getLogger(UsrService.class);
	
	public void getUsrList(Model model) {
		
		model.addAttribute("usrList", usrDao.selectAll());
		
	}
	
	public boolean checkUsrIdDup(String usr_id) {
		
			
		return usrDao.checkUsrIdDup(usr_id);		
		
	}
	
	public UsrVo findUsrDetail(String usr_uid) {
		
		return usrDao.selectOne(usr_uid);		
		
	}
	
	public void submitUsrJoin(UsrVo usrVo) {
		
		usrDao.insert(usrVo);		
		
	}
}

댓글 없음:

댓글 쓰기