完整的jdbc查询结果集编码
public static ArrayList<HashMap<String,Object>> query(Connection conn,String sql, Object[] paras) throws Exception {
PreparedStatement statement = null;
ResultSet ss = null;
String str = "";//打日志使用
ArrayList<HashMap<String,Object>> resultList = new ArrayList<HashMap<String,Object>>();
statement = conn.prepareStatement(sql);
if(paras!=null&¶s.length!=0){
for (int i = 0; i < paras.length; i++) {
if (paras[i].getClass().getSimpleName().equals("Integer")) {
statement.setInt(i + 1, (Integer)paras[i]);
str+=paras[i];
} else {
statement.setString(i + 1, (String) paras[i]);
str+=paras[i];
}
}
}
ss = statement.executeQuery();
ResultSetMetaData rsmd = ss.getMetaData();//获得结果集的列信息
int columnNum = rsmd.getColumnCount();
while(ss.next()){
HashMap<String,Object> tmpMap = new HashMap<String, Object>();
for (int i = 1; i <=columnNum; i++) {//循环列组装list
tmpMap.put(rsmd.getCatalogName(i), ss.getObject(i));
}
resultList.add(tmpMap);
}
// logger.info("sql:"+sql+" paras:"+str+" resultList:"+resultList.size());
return resultList;
}
以上代码功能不够完成,酌情参考;
参数解析:
Connection conn,数据库链接java.sql.Connection;
String sql, 需要执行的查找SQL java.lang.String;
Object[] paras,根据查找需要传入的参数,Object类型,可以支持Integer和String类型的参数
ArrayList<HashMap<String,Object>> 返回查询结果集,list
语句解释:
ResultSetMetaData rsmd = ss.getMetaData();可以得到SQL查询的结果的列信息
int columnNum = rsmd.getColumnCount();得到结果集中列的数量
rsmd.getCatalogName(i) 根据一条数据中顺序获得当前列的名称
ss.getObject(i) 从结果集中获得当前列对应的数据
完整的jdbc查询结果集编码的更多相关文章
- [JDBC]查询结果集把字段名和字段值一起竖向输出
代码: package com.hy.fieldandvalue; import java.sql.Connection; import java.sql.DriverManager; import ...
- jdbc 05: 查询结果集
jdbc连接mysql,查询结果集 package com.examples.jdbc.o5_结果集查询; import java.sql.*; import java.util.ResourceBu ...
- JDBC 资源绑定器 ,处理查询结果集
使用资源绑定器绑定属性配置 实际开发中不建议把连接数据库的信息写死到Java程序中 //使用资源绑定器绑定属性配置 ResourceBundle bundle = ResourceBundle.get ...
- spring jdbc 查询结果返回对象、对象列表
首先,需要了解spring jdbc查询时,有三种回调方式来处理查询的结果集.可以参考 使用spring的JdbcTemplate进行查询的三种回调方式的比较,写得还不错. 1.返回对象(queryF ...
- Eclipse中java获得mysql的查询结果集
不废话,先上代码,再上解释说明 package com.ningmeng; import java.sql.*; /** * 1:获取查询结果集 * @author biexiansheng * */ ...
- Java 通过JDBC查询数据库表结构(字段名称,类型,长度等)
Java 通过JDBC查询数据库表结构(字段名称,类型,长度等) 发布者:唛唛家的豆子 时间:2012-11-20 17:54:02 Java 通过JDBC查询数据库表结构(字段名称,类型,长 ...
- 用JDBC查询数据库
JDBC API的核心组件:1.DriverManager类:用语跟踪可用的JDBC驱动程序并产生数据库连接. 2.Connection接口:用于取得数据库信息.生成数据库语句,并管理数据库事务. 3 ...
- Spring JdbcTemplate 查询结果集Map反向生成Java实体(转)
原文地址:Spring JdbcTemplate 查询结果集Map反向生成Java实体 以前写过一篇文章吐槽过Spring JdbcTemplate的queryForList方法(参见:http:// ...
- Redis查询&JDBC查询&Hibernate查询方式的效率比较...
比较三种查询方式查询效率对比...我是用的JavaWeb的方式通过通过JSP页面查询的填写查询的参数...给予反馈.... 整个demo的下载地址:http://files.cnblogs.com/f ...
随机推荐
- RocketMQ里的一个获取时间的工具类SystemClock
看rocketmq源码的时候发现他们还给时钟封装里一下. /** * Licensed to the Apache Software Foundation (ASF) under one or mor ...
- linux经常使用文字处理命令总结
linux grep命令 作用 Linux系统中grep命令是一种强大的文本搜索工具,它能使用正則表達式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expressio ...
- 服务器变量 超级全局数组$_SERVER (附加超简单表单与html5表单属性)
001.html <html> <head><title>user log</title> <meta http-equiv="cont ...
- kubernetes 环境搭建
一.规划1.系统centos 7 2.ip规划及功能分配192.168.2.24 master 192.168.2.24 etcd 192.168.2.25 node1(即minion)192.168 ...
- 使用Firefly编写简易聊天室
1.创建工程命令行下输入firefly-admin.py createproject chat_rooms(linux在终端输入),<ignore_js_op> firefly会在C盘Us ...
- Unity3D优化之合并网格
原文地址点击这里
- Unity 开发游戏编写代码的技巧
在平时开发游戏过程中,遇到一些编写代码很繁琐的问题. 我发现我团队中每个人都会遇到,就算打写出来分享下经验. 条件断点 利用IDE提供的工具, 右键断点的时候 输入条件, 当条件达成的时候,断点才能命 ...
- C++从零实现简单深度神经网络(基于OpenCV)
代码地址如下:http://www.demodashi.com/demo/11138.html 一.准备工作 需要准备什么环境 需要安装有Visual Studio并且配置了OpenCV.能够使用Op ...
- 如何优雅的使用RabbitMQ(转载)
RabbitMQ无疑是目前最流行的消息队列之一,对各种语言环境的支持也很丰富,作为一个.NET developer有必要学习和了解这一工具.消息队列的使用场景大概有3种: 1.系统集成,分布式系统的设 ...
- 浅谈CSRF攻击方式(转)
引自:http://www.cnblogs.com/hyddd/一.CSRF是什么? CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one cli ...