iBatis - SqlMapClient class 만들어 주는 util

Published on: 2009. 8. 8. 03:17 by louis.dev


iBatis를 사용할때 template를 쓰지 않을때는 항상 SqlMapConfig파일을 통해 SqlMapClient를 생성해야 한다. 그것을 쉽게 해주기 위한 Abstract class이다.

package com.myhome.manager;

import com.ibatis.common.resources.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;

public abstract class SQLManager {
 
 private SqlMapClient sc = null;
 
 public SQLManager(){
  try{
   sc = SqlMapClientBuilder.buildSqlMapClient(
            Resources.getResourceAsReader(
              "com/myhome/manager/SqlMapConfig.xml"));           //sql설정이 들어가 있는 SqlMapConfig파일 위치 지정
                                                                                            //classes 폴더에 있으면 SqlMapClient.xml로 바로 지정 해도 됨
  }catch(java.io.IOException ie){
   ie.printStackTrace();
  }
 }
 
 public SqlMapClient getSqlMap(){
  return sc;
     }
}

사용방법은 extends로 다음 클래스 파일을 확장 받은다음에 getSqlMap을 통해 SqlMapCleint를 생성한다.

예)

public class UploadDAO extends SQLManager{
 
 public void insert(UploadDTO dto) throws SQLException{
           this.getSqlMap().insert("uploadInsert",dto);
 }