ibatis在編寫sqlmap的查詢時,可以配置多種輸出格式,比如:實體類,hashmap,xml格式。
sqlmap中的hashmap和xml都是內置別名.
1.實體類:
//xml配置
<resultMap id="UserResult" class="User">
<result property="id" column="T_ID"/>
<result property="name" column="T_NAME"/>
<result property="sex" column="T_SEX"/>
<result property="address" column="T_ADDRESS"/>
</resultMap>
<select id="selectAllUser" resultMap="UserResult">
select * from t_user </select>
//java
List list = userdao.selectAllUser();
for(int i=0;i<list.size();i++) {
System.out.println(list.get(i));
}
注:當作一個對象使用。
2.hashmap:
//xml配置
<select id="selectAllUser" resultClass="hashmap"> select * from t_user </select>
//java
List list = userdao.selectAllUser();
for(int i=0;i<list.size();i++) {
Map map = (Map)list.get(i);
System.out.print(map.get("id")+" ");
System.out.print(map.get("name")+" ");
System.out.print(map.get("sex")+" ");
System.out.print(map.get("address"));
System.out.println();
}
注:當作一個鍵值對的MAP使用。
3.XML:
//XML配置
<select id="selectXML" resultClass="xml" xmlResultName="log"> select * from t_user </select>
//Java
List list = userdao.selectAllUser();
for(int i=0;i<list.size();i++) {
System.out.println(list.get(i));
}
//xml輸出結果
<?xml version="1.0" encoding="UTF-8"?><log><id>1</id><name>hua</name><***>1</***><address>1</address></log>
<?xml version="1.0" encoding="UTF-8"?><log><id>2</id><name> zhupan </name><***>2</***><address>1</address></log>
<?xml version="1.0" encoding="UTF-8"?><log><id>4</id><name> 4 </name><***>4</***><address>1</address></log>
<?xml version="1.0" encoding="UTF-8"?><log><id>5</id><name> 5 </name><***>5</***><address>2</address></log>