【死磕ibatis】SqlMapClient 基本操作示例

前言:
想要学习ibatis,我这里写了一些关于SqlMapClient 的具体例子,希望对你有帮助。话不多说,直接看例子。

例 1: 数据写入操作(insert, update, delete):

sqlMap.startTransaction();
Product product = new Product();
product.setId (1);
product.setDescription (“Shih Tzu”);
int rows = sqlMap.insert (“insertProduct”, product);
sqlMap.commitTransaction();
例 2: 数据查询 (select)
sqlMap.startTransaction();
Integer key = new Integer (1);
Product product = (Product)sqlMap.queryForObject
(“getProduct”, key);
sqlMap.commitTransaction();
例 3: 在指定对象中存放查询结果 (select)
sqlMap.startTransaction();
Customer customer = new Customer();
sqlMap.queryForObject(“getCust”, parameterObject, customer);
sqlMap.queryForObject(“getAddr”, parameterObject, customer);
sqlMap.commitTransaction();
例 4: 执行批量查询 (select)
sqlMap.startTransaction();
List list = sqlMap.queryForList (“getProductList”, null);
sqlMap.commitTransaction();
例 5: 关于 AutoCommit
//没有预先执行startTransaction时,默认为auto_commit模式
int rows = sqlMap.insert (“insertProduct”, product);
例 6: 查询指定范围内的数据
sqlMap.startTransaction();
List list = sqlMap.queryForList (“getProductList”, null, 0, 40);
sqlMap.commitTransaction();
例7: 结合RowHandler进行查询(select)

public class MyRowHandler implements RowHandler {
public void handleRow (Object object, List list) throws
SQLException {
Product product = (Product) object;
product.setQuantity (10000);
sqlMap.update (“updateProduct”, product);
}
}
sqlMap.startTransaction();
RowHandler rowHandler = new MyRowHandler();
List list = sqlMap.queryForList (“getProductList”, null,
rowHandler);
sqlMap.commitTransaction();
例 8: 分页查询 (select)
PaginatedList list =
sqlMap.queryForPaginatedList (“getProductList”, null, 10);
list.nextPage();
list.previousPage();
例 9: 基于 Map 的批量查询 (select)
Map map = sqlMap.queryForMap (“getProductList”, null,
“productCode”);
sqlMap.commitTransaction();
Product p = (Product) map.get(“EST-93”);
最后:
今天讲的都是一些常见的案例,之后我会给大家带来调优的案例。有兴趣的小伙伴可以给我一个一键三连,万分感谢。

我是程序员双喜,大家一起加油。

上一篇:MyBatis工程搭建&MyBatis实现Mapper配置查询


下一篇:3