此类和上篇的相同,不过此类使用反射机制实现相同的原理吧,^_^
O(∩_∩)O~~一刻
火车上两个人面对而坐,问:“抽烟吗?”答:“不抽。”问:“喝一杯吗?”答:“不喝。”问:“这是我的女儿。”答:“我不玩女人。
开始开发,高兴的工作哦
哦
package cn.com.huawei.opensource.common.dbutils;
import java.lang.reflect.Field;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.logging.Logger;
import org.apache.commons.dbutils.ResultSetHandler;
/**
*
* @author bailonggang
* 2009-2-26
* 下午11:55:16
*/
public class CustomMapListResultSetHandler implements ResultSetHandler{
private static Logger logger=Logger.getLogger(CustomMapListResultSetHandler.class.getName());
private Class cls ;
public CustomMapListResultSetHandler(Class cls)
{
this.cls=cls;
}
/**
*
*/
public Object handle(ResultSet rs) throws SQLException {
得到数据集的元数据对象的
ResultSetMetaData meta=rs.getMetaData();
得到数据集合的列数的
int cols=meta.getColumnCount();
存储列名称信息
String[] titles=new String[cols];
for (int i = 0; i < titles.length; i++) {
获取列的名称的哦
titles[i]=meta.getColumnName(i+1);
}
存储查询的对象集合
Collection<Object> col=new ArrayList<Object>();
while(rs.next())
{
try{
使用反射常见一个是对象的实例
Object o=cls.newInstance();
for (int i = 0; i < titles.length; i++)
{
得到响应的字段
Field field=cls.getDeclaredField(titles[i]);
try {
设置可以访问类的私有属性
field.setAccessible(true);
获取列的数值偶
Object value=rs.getObject(i);
此处可以使用反射机制中Method实现比较麻烦所以使用Field的方法实现
field.set(o, value);
} catch (Exception e) {
logger.info("set the class "+cls.getName()+" property "+field.getName()+" failure :"+e.getMessage());
e.printStackTrace();
}
}
col.add(o);
}catch(Exception ex)
{
logger.info("the exception occur "+ex.getMessage());
ex.printStackTrace();
}
}
return col;
}
}
分享到:
相关推荐
**正文** `commons-dbutils.jar.rar` 是一个包含Apache Commons DBUtils库的不同版本的压缩文件,主要用于Java应用程序中的...无论是在学习还是在实际开发中,了解和掌握DBUtils都是提高数据库操作效率的重要一步。
总的来说,Apache Commons DBUtils是Java开发中一个强大的数据库工具库,它的出现大大简化了JDBC的使用,提高了开发效率和代码的可读性。对于需要处理数据库操作的Java项目,DBUtils是一个值得考虑的选择。
Apache Commons DBUtils是Apache软件基金会开发的一个开源项目,它提供了一套简洁、高效且实用的工具类,用于简化Java应用程序中的数据库操作。这个项目的最新版本为"commons-dbutils-1.4.jar",它的主要目标是减轻...
commons-dbutils.jar是在java架构开发时十分重要的一款.jar包,正确的使用commons dbutils可以让你的开发事半功倍,如果您在开发过程中缺少这款jar包,马上来下载commonsdbutils jar包吧! 软件功能: commons-...
总结,Apache Commons DBUtils作为Java中的数据库操作利器,以其简洁、安全、高效的特点,极大地简化了开发人员与数据库交互的工作。它在处理日常的CRUD操作时表现出色,是Java开发者不可或缺的工具之一。了解并熟练...
总的来说,Apache Commons DBUtils是Java开发中一个非常实用的工具,通过提供简洁的API和强大的异常处理,使得数据库操作变得更加便捷和安全。对于任何需要与数据库交互的Java应用,DBUtils都是一个值得考虑的选择。
DBUtils的核心类和接口位于`org.apache.commons.dbutils`包下,可以直接导入使用。 例如,要执行一个SQL查询并获取结果集的Bean列表,可以这样做: ```java QueryRunner runner = new QueryRunner(); List<MyBean>...
Apache Commons DBUtils是Java开发中一个非常实用的数据库操作库,尤其在处理简单和重复的数据库访问任务时,它提供了一种简洁、高效的方式。这个"commons-dbutils-1.5"版本是DBUtils项目的早期稳定版本,它包含了对...
Apache Commons DBUtils 是一个开源的 Java 库,它简化了数据库操作,为开发人员提供了方便、安全的数据库访问...由于它的简单易用和强大的功能,Apache Commons DBUtils 在Java Web应用和企业级开发中得到了广泛应用。
Apache Commons DBUtils是一个Java库,它为数据库操作提供了一些实用工具和帮助类,极大地简化了JDBC编程。这个"commons-dbutils-1.7.zip"压缩包包含了版本1.7的DBUtils库,这是一个在2005年发布的稳定版本。DBUtils...
在实际开发中,通过引入`commons-dbutils-1.6.jar`,我们可以快速构建数据库操作的代码,减少错误,提高代码质量。不过,需要注意的是,虽然DBUtils简化了JDBC,但仍然需要对SQL和数据库有一定的理解。此外,随着...
Apache Commons DBUtils是Java开发中的一个实用工具库,专门用于简化数据库操作。它是一个轻量级的框架,基于Java JDBC API,旨在使数据库编程变得更加简单和健壮。这个"commons-dbutils-1.3"版本是该库的一个早期...
总的来说,commons-dbutils和commons-beanutils是JavaWeb开发中非常实用的工具库,它们简化了数据库操作和对象属性处理,提高了开发效率。合理利用这些库,可以打造更健壮、易于维护的JavaWeb应用。
Apache Commons DBUtils是一个Java库,它为数据库操作提供了一些实用工具和抽象,简化了数据库编程。这个"commons-dbutils-1.2.rar"文件包含了Apache Commons DBUtils的1.2版本,这是一个历史悠久且广泛使用的开源...
Apache Commons DBUtils是Java开发中一个非常实用的数据库操作库,它简化了JDBC(Java Database Connectivity)的使用,提供了一种更安全、更高效的方式来处理数据库操作。这个"commons-dbutils-1.3-bin"压缩包包含...
Java Web开发中,Apache Commons DBUtils是一个非常实用的...结合Commons Logging,我们可以轻松管理和调试应用程序的日志,进一步优化开发流程。在实际项目中,合理使用这两个库,可以极大地提升开发效率和代码质量。
`commons-dbutils-1.2.jar` 是一个由Apache软件基金会开发并维护的Java库,它是Apache Commons项目的一部分,专注于简化数据库操作。这个小巧而实用的库为Java开发者提供了一种简单的方式来处理数据库连接,查询结果...