공부는 끊임없이 !!

jwlee1728.egloos.com

포토로그



ibatis 설정 ibatis

1. http://ibatis.apache.org/java.cgi
ibatis lib를 다운 받는다.


2. SqlMapConfg.properties 파일 설정

driver=oracle.jdbc.OracleDriver
url=jdbc:oracle:thin:@"ip":"port":"서비스명"
username="ID"
password="PASS"


3.SqlMapConfig.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"
"http://www.ibatis.com/dtd/sql-map-config-2.dtd">

<sqlMapConfig>

 <properties resource="SqlMapConfig.properties" />
 
 <settings
     cacheModelsEnabled="true"
     enhancementEnabled="true"
     lazyLoadingEnabled="true"
     maxRequests="32"
     maxSessions="10"
     maxTransactions="5"
     useStatementNamespaces="false"
 />
   
 <transactionManager type="JDBC" >
    <dataSource type="SIMPLE">
      <property name="JDBC.Driver" value="${driver}" />
      <property name="JDBC.ConnectionURL" value="${url}" />
      <property name="JDBC.Username" value="${username}" />
      <property name="JDBC.Password" value="${password}" />
    </dataSource>
 </transactionManager>
 
 <sqlMap resource="WonderGirls.xml" />
 
</sqlMapConfig>

위에서 설정한 properties 값들이 들어간다고 보면 되겠다.


3. map xml 작성

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN"
"http://www.ibatis.com/dtd/sql-map-2.dtd">

<sqlMap namespace="WonderGirls">
 
  <select id="getDept" resultClass="java.util.HashMap">
  select DEPT_NAME
  from DEPT
 </select>

</sqlMap>



DeptDao.java
package co.kr.ljw;

import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

import com.ibatis.sqlmap.client.SqlMapClient;

public class DeptDAO {

  public void viewDept(SqlMapClient sqlMap) throws SQLException {
 
     ArrayList<HashMap> al =  (ArrayList) sqlMap.queryForList("getDept");
     HashMap hm;
     
     for(int i = 0; i < al.size(); i++){
         hm = al.get(i);
         System.out.println( hm.get("DEPT_NAME"));
     }
 }
}


Main.java

package co.kr.ljw;

import java.io.IOException;
import java.sql.SQLException;

import com.ibatis.sqlmap.client.SqlMapClient;

public class Main {

 public static void main(String[] args) throws SQLException, IOException {

  SqlMapClient sqlMap = MyAppSqlConfig.getSqlMapInstance();
  DeptDAO deptDao = new DeptDAO();
  
   try {
     deptDao.viewDept(sqlMap);
   } catch (Exception e) {
       System.out.println("예외");
   }
  }
}


프로퍼티 파일에서 올바르게 계정입력하고 테이블만 이름만게 (DEPT) 있으면
실행해보실수 있습니다.

 iBatisTest.zip


덧글

  • TheKitty 2014/04/11 17:39 # 삭제 답글

    테이블 만들어서 안에 insert해서 내용을 넣었는데 실행해보니 null값만 출력되네요
    뭐가 문제일까요?
  • TheKitty 2014/04/11 18:09 # 삭제 답글

    DeptDAO에서 hm.get("name")을 좀 수정하니까 값은 나오네요
  • jwlee1728 2014/04/14 21:06 #

    헉 그런가요. 좀 오래전에 만든거라 ^^ 바로 생각은 안나네요 한번 확인해볼께요
댓글 입력 영역