完整的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 ... 
随机推荐
- ArrayList源码深度解析
			jdk:1.8 一.先看看ArrayList类的整体概述, ArraList是基于动态数组实现的一种线性列表,这种基于动态数组的好处就是索引比较快,时间复杂度为O(1):但是对数据修改比较慢,因为需要 ... 
- Spring框架学习(10)Spring中如何使用事务?
			内容源自:Spring中如何使用事务? 一.为什么要使用事务? 如果我们一个业务逻辑只执行一次sql,是不需要使用事务的.但如果要执行多条sql语句才能完成一个业务逻辑的话,这个时候就要使用事务了. ... 
- JAVA NIO 之ByteBuffer的mark、position、limit、flip、reset,get方法介绍
			参考博客:http://blog.csdn.net/sunzhenhua0608/article/details/31778519 先来一个demo: import java.nio.ByteBuff ... 
- 浅记初次使用expect、scp中出现的一些小问题
			以前也学过一些shell,不过学得并不是很深入,动手写的代码的时间也不是很多.前不久将shell比较细的过了一遍,leader布置了任务让用shell写一个脚本将redis源码压缩包从一个服务器上传到 ... 
- 网页图表控件Highcharts选项配置参数
			Highcharts提供大量的选项配置参数,您可以轻松定制符合用户要求的图表,目前官网只提供英文版的开发配置说明文档,而中文版的文档网上甚少,且零散不全.这里,我把Highcharts常用的最核心的参 ... 
- ffmpeg对rtmp的基本操作[转]
			ffplay和ffmpeg调用的库是一样的.我刚才试了一下,是可以播的.ffplay "rtmp://tsl.s1979.cutv.com:1935/cutvChannelLive/AxeF ... 
- 算法笔记_072:N皇后问题(Java)
			目录 1 问题描述 2 解决方案 1 问题描述 把n个皇后放在一个n*n的棋盘上,使得任何两个皇后都不能相互攻击,即它们不能同行,不能同列,也不能位于同一条对角线上. 2 解决方案 本文采用全排列 ... 
- mysql中如何统计某字段里某个字符的个数
			select * from order where length(order_num)-length(replace(order_num,'8','')) = 4 
- Solr4.0使用
			http://blog.sina.com.cn/s/blog_64dab14801013k7g.html Solr简介 Solr是一个非常流行的,高性能的开源企业级搜索引擎平台,属于Apache Lu ... 
- DataTable转换成匿名类的List类型
			DataTable转换成匿名类的List类型 因为匿名类是不能够 Activator.CreateInstance进行反射实例化的 /// <summary> /// 匿名类的转换方式 ... 
