iBATIS - 이용 POJO빈에서 객체 값 가져오기
Posted 11 19, 2008 09:21, Filed under: Language/ㅡ iBATIS
# 한번의 광고 클릭으로, 당신을 대신해서 불우이웃을 도울 기회가 많아집니다.
### iBATIS 프레임웍을 사용하기 위해 Libraries 와 ojdbc14.jar 파일이 있어야 함. ###
iBATIS - Download
- http://ibatis.apache.org/javadownloads.cgi
------------------------ Emp.java : POJO Bean ------------------------
package ex1.vo;
public class Emp {
private String ename, job, hiredate, deptno;
private int empno;
public String getDeptno() {
return deptno;
}
public void setDeptno(String deptno) {
this.deptno = deptno;
}
public int getEmpno() {
return empno;
}
public void setEmpno(int empno) {
this.empno = empno;
}
public String getEname() {
return ename;
}
public void setEname(String ename) {
this.ename = ename;
}
public String getHiredate() {
return hiredate;
}
public void setHiredate(String hiredate) {
this.hiredate = hiredate;
}
public String getJob() {
return job;
}
public void setJob(String job) {
this.job = job;
}
}
------------------------ sqlMapConfig.xml -----------------------
<?xml version="1.0" encoding="UTF-8"?>
### 아래 dtd 로드 중요부분 ###
<!DOCTYPE sqlMapConfig PUBLIC '-//ibatis.apache.org//DTD SQL Map Config 2.0//EN' 'http://ibatis.apache.org/dtd/sql-map-config-2.dtd'>
<sqlMapConfig>
<transactionManager type="JDBC" commitRequired="false" >
<!-- // SIMPLE - 기본 -->
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="oracle.jdbc.driver.OracleDriver"/>
<property name="JDBC.ConnectionURL" value="jdbc:oracle:thin:@192.168.2.22:1521:ora9i"/>
<property name="JDBC.Username" value="scott"/>
<property name="JDBC.Password" value="tiger"/>
</dataSource>
</transactionManager>
<!-- 해당하는 패키지에 Emp.xml파일이 존재해야함 -->
<sqlMap resource="ex1/Emp.xml"/>
</sqlMapConfig>
------------------------ Emp.xml ------------------------
<?xml version="1.0" encoding="UTF-8"?>
### 아래 dtd 로드 중요부분 sqlMapConfig 와 다른점 config 문구가 빠짐 ###
<!DOCTYPE sqlMap PUBLIC '-//ibatis.apache.org//DTD SQL Map 2.0//EN' 'http://ibatis.apache.org/dtd/sql-map-2.dtd'>
<sqlMap>
<!-- <typeAlias alias="emp" type="ex1.vo.Emp"/> Alias 를 이용하여 아래 resultClass 부분을 대체 할수 있슴 -->
<select id="selectAll" resultClass="ex1.vo.Emp">
SELECT * FROM emp
</select>
<!-- 10번 부서에 해당하는 값을 가져와라 -->
<select id="selectDeptno" parameterClass="int" resultClass="ex1.vo.Emp">
SELECT * FROM emp WHERE DEPTNO = #no#
</select>
</sqlMap>
------------------------ EmpClient.java ------------------------
package ex1;
import com.ibatis.common.resources.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;
import ex1.vo.Emp;
import java.io.IOException;
import java.io.Reader;
import java.sql.SQLException;
import java.util.List;
public class EmpClient
{
public static void main(String[] arr)throws IOException, SQLException
{
// 환경설정 파일 인식
Reader reader = Resources.getResourceAsReader("sqlMapConfig.xml");
// sqlMap 객체들 가져오기
SqlMapClient sqlmap = SqlMapClientBuilder.buildSqlMapClient(reader);
// 결과 받기
List<Emp> list = sqlmap.queryForList("selectAll");
for(Emp e : list)
{
System.out.println(
e.getEmpno()+","+
e.getEname()+","+e.getDeptno()+","+
e.getJob());
}
reader.close();
// 인자 값이 있는 결과 받기
list = sqlmap.queryForList("selectDeptno", 10);
System.out.println("------ 10번 부서만 가져와라 ------");
for(Emp e : list)
{
System.out.println(
e.getEmpno()+","+
e.getEname()+","+e.getDeptno()+","+
e.getJob());
}
reader.close();
}
}
iBATIS - Download
- http://ibatis.apache.org/javadownloads.cgi
------------------------ Emp.java : POJO Bean ------------------------
package ex1.vo;
public class Emp {
private String ename, job, hiredate, deptno;
private int empno;
public String getDeptno() {
return deptno;
}
public void setDeptno(String deptno) {
this.deptno = deptno;
}
public int getEmpno() {
return empno;
}
public void setEmpno(int empno) {
this.empno = empno;
}
public String getEname() {
return ename;
}
public void setEname(String ename) {
this.ename = ename;
}
public String getHiredate() {
return hiredate;
}
public void setHiredate(String hiredate) {
this.hiredate = hiredate;
}
public String getJob() {
return job;
}
public void setJob(String job) {
this.job = job;
}
}
------------------------ sqlMapConfig.xml -----------------------
<?xml version="1.0" encoding="UTF-8"?>
### 아래 dtd 로드 중요부분 ###
<!DOCTYPE sqlMapConfig PUBLIC '-//ibatis.apache.org//DTD SQL Map Config 2.0//EN' 'http://ibatis.apache.org/dtd/sql-map-config-2.dtd'>
<sqlMapConfig>
<transactionManager type="JDBC" commitRequired="false" >
<!-- // SIMPLE - 기본 -->
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="oracle.jdbc.driver.OracleDriver"/>
<property name="JDBC.ConnectionURL" value="jdbc:oracle:thin:@192.168.2.22:1521:ora9i"/>
<property name="JDBC.Username" value="scott"/>
<property name="JDBC.Password" value="tiger"/>
</dataSource>
</transactionManager>
<!-- 해당하는 패키지에 Emp.xml파일이 존재해야함 -->
<sqlMap resource="ex1/Emp.xml"/>
</sqlMapConfig>
------------------------ Emp.xml ------------------------
<?xml version="1.0" encoding="UTF-8"?>
### 아래 dtd 로드 중요부분 sqlMapConfig 와 다른점 config 문구가 빠짐 ###
<!DOCTYPE sqlMap PUBLIC '-//ibatis.apache.org//DTD SQL Map 2.0//EN' 'http://ibatis.apache.org/dtd/sql-map-2.dtd'>
<sqlMap>
<!-- <typeAlias alias="emp" type="ex1.vo.Emp"/> Alias 를 이용하여 아래 resultClass 부분을 대체 할수 있슴 -->
<select id="selectAll" resultClass="ex1.vo.Emp">
SELECT * FROM emp
</select>
<!-- 10번 부서에 해당하는 값을 가져와라 -->
<select id="selectDeptno" parameterClass="int" resultClass="ex1.vo.Emp">
SELECT * FROM emp WHERE DEPTNO = #no#
</select>
</sqlMap>
------------------------ EmpClient.java ------------------------
package ex1;
import com.ibatis.common.resources.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;
import ex1.vo.Emp;
import java.io.IOException;
import java.io.Reader;
import java.sql.SQLException;
import java.util.List;
public class EmpClient
{
public static void main(String[] arr)throws IOException, SQLException
{
// 환경설정 파일 인식
Reader reader = Resources.getResourceAsReader("sqlMapConfig.xml");
// sqlMap 객체들 가져오기
SqlMapClient sqlmap = SqlMapClientBuilder.buildSqlMapClient(reader);
// 결과 받기
List<Emp> list = sqlmap.queryForList("selectAll");
for(Emp e : list)
{
System.out.println(
e.getEmpno()+","+
e.getEname()+","+e.getDeptno()+","+
e.getJob());
}
reader.close();
// 인자 값이 있는 결과 받기
list = sqlmap.queryForList("selectDeptno", 10);
System.out.println("------ 10번 부서만 가져와라 ------");
for(Emp e : list)
{
System.out.println(
e.getEmpno()+","+
e.getEname()+","+e.getDeptno()+","+
e.getJob());
}
reader.close();
}
}
"Language / ㅡ iBATIS" 분류의 다른 글
| iBATIS - DAO 개념 사용. 싱글턴 DaoManager (0) | 2008/11/21 |
| iBATIS - sqlMap.xml(상속관계) , 조인 쿼리 (0) | 2008/11/20 |
| iBATIS - Oracle(Emp, Dept) Join 결과값 출력 형식 (0) | 2008/11/19 |
# 한번의 광고 클릭으로, 당신을 대신해서 불우이웃을 도울 기회가 많아집니다.
Response :
0 Trackback
,
0 Comment
Trackback URL : http://develop.sunshiny.co.kr/trackback/4