ITPub博客

首页 > 应用开发 > Java > JDBC 工具类-代码

JDBC 工具类-代码

原创 Java 作者:元亨利贞 时间:2024-02-23 11:42:44 0 删除 编辑

代码示例

//适配JDBC服务的所有查询
public static <T> List<T> queryResultList(Connection connection, String querySql, Class<T> clz, boolean underScoreToCamel) throws Exception {
    //存放结果数据
    ArrayList<T> list = new ArrayList<>();
    //预编译
    PreparedStatement preparedStatement = connection.prepareStatement(querySql);
    //查询操作
    ResultSet resultSet = preparedStatement.executeQuery();
    ResultSetMetaData metaData = resultSet.getMetaData();
    int columnCount = metaData.getColumnCount();
    //遍历查询到的结果集,将每行数据封装为T对象,并将其放入集合
    while (resultSet.next()) {
        //创建T对象
        T t = clz.newInstance();
        for (int i = 0; i < columnCount; i++) {
            //获取列名
            String columnName = metaData.getColumnName(i + 1);
            //获取列值
            Object value = resultSet.getObject(columnName);
            //判断是否需要转换列名信息:驼峰命名
            if (underScoreToCamel) {
                columnName = CaseFormat.LOWER_UNDERSCORE.to(CaseFormat.LOWER_CAMEL, columnName.toLowerCase());
            }
            //给T对象赋值
            BeanUtils.setProperty(t, columnName, value);
        }
        //将T对象加入集合
        list.add(t);
    }
    //释放资源
    resultSet.close();
    preparedStatement.close();
    //返回结果数据
    return list;
}


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70024433/viewspace-3007163/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 车联网术语大全
请登录后发表评论 登录
全部评论

注册时间:2022-11-21

  • 博文量
    383
  • 访问量
    248007