/**
* 通过ResultSet构建一个指定类型的对象
*
* @param <T>
* @param clazz
* @param rs
* @return
*/
private <T> T buildObject(Class<T> clazz, ResultSet rs) {
if (rs == null) {
return null;
}
T object = null;
try {
// 通过默认构造方法创建一个新的对象
object = clazz.getConstructor(new Class[] {}).newInstance(new Object[] {});
// 获得对象的所有属性
Field[] fields = clazz.getDeclaredFields();
for (int i = 0; i < fields.length; i++) {
// 获取属性名称
String fieldName = fields[i].getName();
// 获取属性名称的首字母,并将该字母转为大写形式
String firstLetter = fieldName.substring(0, 1).toUpperCase();
// 获得和属性对应的setXXX()方法的名字
String setMethodName = "set" + firstLetter + fieldName.substring(1);
// 获得和属性对应的setXXX()方法
Method setMethod = clazz.getMethod(setMethodName, new Class[] { fields[i].getType() });
// 调用目标对象的setXXX()方法对其属性赋值
setMethod.invoke(object, new Object[] { rs.getObject(fieldName.toLowerCase()) });
}
} catch (Exception e) {
e.printStackTrace();
object = null;
}
return object;
}
分享到:
相关推荐
为了提高代码复用性和减少重复性工作,通常会封装一个数据库操作类,包含上述增删改查的静态方法,传入相应的SQL语句和参数,这样就可以在多个地方方便地调用。 总的来说,JDBC通用增删改查方法是Java开发中的基础...
在JDBC通用类中,通常会封装一个方法来初始化连接池,如`initDataSource()`,并在需要时调用`getConnection()`从连接池中获取连接。 2. **基于属性文件的数据库连接**:属性文件通常以`.properties`格式存储,用来...
通过这样的封装,开发者只需要调用几个方法,就能方便地完成数据库的增删改查操作,大大提高了开发效率。 总结来说,"jdbc通用数据库连接"是指通过Java的JDBC API,封装了数据库操作的类或方法,使得在不同项目中...
自己写的一个JDBC通用DAO 有几点需要注意: 1.数据库命明目前只支持没下血杠命名(_) 2.表ID字段名取名有2种方式 (1)ID (2)TableName + ID 例如:user表 则取名为 id 或者 userid 因为没有用xml来映射表结构确定哪一个...
本资源是对JDBC的封装,方便在项目中使用,其中BaseDao.java是对JDBC操作的封装,使用时让自己的Dao类继承即可,然后调用其中的executeQuery和executeOthe分别执行DQL和DML操作。dbinfo.properties属性文件存储基本...
此外,还有一个名为“神通数据库快速入门 (1).pdf”的文件,这很可能是神通数据库的用户手册或快速入门指南。手册通常会包含安装步骤、数据库的基本操作、SQL语法示例以及常见问题的解决方案等内容。对于初学者来说...
通过创建这样一个类,开发者可以封装常见的数据库连接、查询、执行SQL语句等操作,使得数据库访问更加简洁且易于维护。本文将深入探讨如何利用反射技术和元数据信息来实现自定义数据源。 首先,让我们理解什么是...
这是十分十分好用的达梦6jdbc通用驱动,欢迎大家下载啊
- **getConnection 方法**:根据数据库配置信息创建并返回一个数据库连接。 ##### 4. executeQuery 方法 ```java public ResultSet executeQuery(String sql) { try { conn = getConnection(); // 调用get...
通用的jdbc增删改查,仅仅只是两个通用的方法,利用反射和泛型
一个典型的jdbc通用连接操作类可能会包含以下方法: 1. `getConnection()`:获取数据库连接,通常会包含异常处理,确保连接的建立不会因错误中断。 2. `executeQuery(String sql)`:执行SQL查询,返回ResultSet对象...
getColumns方法会发送一个查询到数据库,获取所有列的信息,而这种方法对于大型表来说可能会非常慢。相反,可以创建一个不会返回任何数据的“哑元”查询(如“SELECT * FROM UnknownTable WHERE 1 = 0”),然后获取...
JDBC分页与数据连接通用类 望指教!有问题请指出!
简单易用的数据库封装操作,包含数据库连接池的基本实现,数据库连接可重用,所有的操作都脱离源生JDBC操作,开发人员只需要熟悉Java集合的用法,会写Sql即可轻松的使用该封装好的JDBC API写出合理的代码。...
本篇将围绕“Spring3 JDBC通用DAO封装”这一主题展开,介绍如何实现一个高效的DAO层,并分享相关代码示例。 1. **Spring3 JDBC概述** Spring3 JDBC通过提供JdbcTemplate和SimpleJdbcInsert等工具类,帮助开发者...
2. 请求连接:当应用程序需要访问数据库时,向连接池申请一个连接,连接池会检查当前是否有空闲连接,如果有则直接返回,否则等待或创建新的连接。 3. 使用连接:应用程序获取到连接后,进行数据库操作。 4. 归还...
南大通用jdbc连接驱动,gbase-connector-java-8.3.81.51,版本还是比较新的,可以下载来使用,如果有何问题,可留言。
"JDBC的通用模块、角色、权限管理"是针对系统中的数据访问、角色管理和权限控制的一种实现,旨在提供一个可复用的、高度封装的解决方案,以简化开发流程,提高代码的可维护性和安全性。 首先,通用模块的设计是为了...
在IT领域,JDBC(Java Database Connectivity)是Java编程语言中用于与各种数据库进行交互的一组接口和类。本压缩包“达梦-神通-南大通用-优炫-瀚高-KingBase jdbc驱动.zip”包含了针对不同国产数据库系统的JDBC驱动...