package com.air;
import java.io.Reader;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.ibatis.common.resources.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;
public class Demo1 {
public static void main(String[] args) {
String resource = "SqlMapConfig.xml";
Reader reader;
try {
reader = Resources.getResourceAsReader(resource);
SqlMapClient sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);
// 1.返回单条记录
System.out.println("-----------返回单条记录----------");
Account acc = (Account) sqlMap.queryForObject("getOneUserById", 1);
System.out.println(acc.getUserid() + "\t" + acc.getUsername()
+ "\t" + acc.getPassword() + "\t" + acc.getGroupname());
// 2.返回多条记录
// 无参数
// 内连Entity
System.out.println("-----------内连Entity----------");
List listEntity = sqlMap.queryForList("getAllUserByGroupNameEntity", "NBA");
ShowEntity(listEntity);
// 内连Map
System.out.println("-----------内连Map----------");
List listMap = sqlMap.queryForList("getAllUserByGroupNameMap","NBA");
ShowMap(listMap);
// 显示Entity
System.out.println("-----------显示Entity----------");
List listEntityShow = sqlMap.queryForList("getAllUserByGroupNameEntityShow", "NBA");
ShowEntity(listEntityShow);
// 显示Map
System.out.println("-----------显示Map----------");
List listMapShow = sqlMap.queryForList("getAllUserByGroupNameMapShow","NBA");
ShowResultMap(listMapShow);
// Xml
System.out.println("-----------Xml----------");
List listXml = sqlMap.queryForList("getAllUserByGroupNameXml","NBA");
ShowXml(listXml);
// //自动参数映射
// Account account = new Account();
// account.setUsername("汤姆森");
// account.setPassword("33333");
// account.setGroupname("IBM");
// sqlMap.insert("insertOneUser1",account);
// //内连参数映射
// Account acou = new Account();
// acou.setUserid(14);
// acou.setUsername("蟠桃园");
// acou.setPassword("bbbbb");
// acou.setGroupname("IBM");
// Account acou1 = new Account();
// acou1.setUsername("白骨精");
// acou1.setPassword("ddddd");
// acou1.setGroupname("IBM");
// sqlMap.startBatch();
// sqlMap.insert("insertOneUser_pro",acou);
// sqlMap.insert("insertOneUser_pro",acou1);
// sqlMap.executeBatch();
// System.out.println("当前插入记录的主键为:" + identity.intValue());
// System.out.println("-----------返回所有记录----------");
// List listUser = sqlMap.queryForList("getAllUser");
// ShowEntity(listUser);
// sqlMap.update("deleteTable",null);
// System.out.println("表已删除成功!");
// XmlRowHandler xrh = new XmlRowHandler();
// sqlMap.queryWithRowHandler("getOneUserById",1,xrh);
// String xml = xrh.getXmlDocument();
// System.out.println(xml);
// FilterRowHandler frh = new FilterRowHandler();
// sqlMap.queryWithRowHandler("getAllUser", null,frh);
// List<Account> list = frh.getList();
// for (int i = 0; i < list.size(); i++)
// {
// Account ac = list.get(i);
// System.out.println(ac.getUserid() + "\t" + ac.getUsername() + "\t" + ac.getPassword() + "\t" + ac.getGroupname());
// }
Account ac = new Account();
// ac.setUsername("蟠桃园");
// ac.setGroupname("NBA");
List<Order> list = (List<Order>)sqlMap.queryForList("getUser4",ac);
for (int i = 0; i < list.size(); i++) {
Order ord = (Order) list.get(i);
System.out.println(ord.getId() + "\t" + ord.getCustomer());
}
} catch (Exception e) {
System.out.println("异常:" + e.getMessage());
}
}
private static void ShowEntity(List list) {
for (int i = 0; i < list.size(); i++) {
Account acc = (Account) list.get(i);
System.out.println(acc.getUserid() + "\t" + acc.getUsername()
+ "\t" + acc.getPassword() + "\t" + acc.getGroupname());
}
}
private static void ShowMap(List list) {
for (int i = 0; i < list.size(); i++) {
Map map = (Map) list.get(i);
System.out.println((String) map.get("USERID").toString() + "\t"
+ (String) map.get("USERNAME") + "\t"
+ (String) map.get("PASSWORD") + "\t"
+ (String) map.get("GROUPNAME"));
}
}
private static void ShowResultMap(List list) {
for (int i = 0; i < list.size(); i++) {
Map map = (Map) list.get(i);
System.out.println((String) map.get("userid").toString() + "\t"
+ (String) map.get("username") + "\t"
+ (String) map.get("password") + "\t"
+ (String) map.get("groupname"));
}
}
private static void ShowXml(List list) {
for (int i = 0; i < list.size(); i++) {
String acc = (String) list.get(i);
System.out.println(acc);
}
}
}