Jakarta Commons——DBUtils
来源:互联网 发布:人工智能预测彩票 编辑:程序博客网 时间:2024/06/05 15:50
用于简化数据库操作,如果使用Spring,可以考虑JDBCTemplate,网址 http://jakarta.apache.org/commons/dbutils/
BasicRowProcessor:
用于数据的封装,具体表现在rs记录集到array,bean,map等.对于bean的封装,提供了两个方法:toBean和toBeanList.也就是说封装一行到一个bean,用list在将所有Bean封装在一起.
ProxyFactory:
代理工厂类,主要生成各种关于jdbc类的代理对象.你可以自己搞一个Connection或者ResultSet等等.其实实现原理很简单,就是用java.lang.reflect.Proxy类生成的.例如下面的代码:
Foo f = (Foo) Proxy.newProxyInstance(Foo.class.getClassLoader(),
new Class[] { Foo.class },
handler);
ResultSetIterator:
这个类就是将ResultSet实现了Iterator接口,做了个封装,我看没什么大用,完全可以由ResultSetHandler的子类做封装.也很简单,需要的自己看看吧.
QueryLoader:
一个属性文件加载器,主要用于加载属性文件中的sql到内存中,是个线程安全的类,看来老外原来喜欢把sql统一放在一个属性文件里面阿.
接着是ResultSetHandler接口带领的记录集封装类.
1. ArrayHandler: 将记录集封装到array里面.
2. ArrayListHandler:将上面的array在封装到List里面.
3. BeanHandler:将记录集封装到一个Bean里面.
4. BeanListHandlerTest:将上面的Bean封装到list里面.
5. MapHandler:....
6. MapListHandler:.....
7. ScalarHandler:这个也简单,就是根据记录集的列的索引或者列名来判断一个值是否和他相等.看起来好像用处也不大...
StringTrimmedResultSet:
将记录集中的数值都trim掉...
SqlNullCheckedResultSet:
这个是对sql语句执行完成之后的的数值进行null的替换.如果你想将int为0的都替换成100或者姓名为null的都替换成”无”,用这个类最合适了.看下面的例子:
Connection conn = .....
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("Select col1, col2 FROM table1");
SqlNullCheckedResultSet wrapper = new SqlNullCheckedResultSet(rs);
wrapper.setNullString("---N/A---");
wrapper.setNullInt(-999);
rs = ProxyFactory.instance().createResultSet(wrapper);
while (rs.next()) {
String col1 = rs.getString("col1");
int col2 = rs.getInt("col2");
}
//这里的col1如果为空的话就已经替换了....
rs.close();
QueryRunner run = new QueryRunner(dataSource);
// Execute the query and get the results back from the handler
Object[] result = (Object[]) run.query(
"SELECT * FROM Person WHERE name=?", "John Doe");
- Jakarta Commons——DBUtils
- Jakarta Commons-DbUtils
- Jakarta Commons组件beanutils、dbutils
- Jakarta commons——概述
- Jakarta commons——Lang
- Jakarta commons——Collections
- Jakarta Commons——IO
- Jakarta Commons——Validator
- Jakarta Commons——Net
- Jakarta Commons——BeanUtils
- Jakarta Commons——Digester
- Jakarta Commons——Discovery
- Jakarta Commons —— Configuration
- Jakarta Commons————HttpClient
- Jakarta Commons(零)——介绍
- Jakarta Commons——对象池
- Jakarta Commons——数学计算
- Jakarta Commons——其他包
- Jakarta Commons——Net
- JavaScript使用cookie,参数设置,说明;读取,写入,删除函数 【转】
- Smarty3.0 使用指南
- lp_solve 规范
- 鲜为人知的软件项目管理原则(转载)
- Jakarta Commons——DBUtils
- XML和HTML常用转义字符
- Yahoo,Msn,Skype,QQ,阿里旺旺,网页聊天,网页链接,在线聊天链接接口调用
- Jakarta Commons——对象池
- 总结一下网站注入与防范的方法
- eclipse 工具
- 【规范】编程注释规范
- C++指针存储结构
- 替换字符串中间的某些字符