遍历ResultSet,行列要从1开始

为什么遍历ResultSet,行列要从1开始。

因为Resultset的第一行的第一列都是空的,要用rs.next()到第一行才能进行读取。

Statement stmt=null;
  ResultSet rs=null;
  ResultSetMetaDatam=null;//获取 列信息
  
  try
  {
   stmt=con.createStatement();
   rs=stmt.executeQuery(sql);
   m=rs.getMetaData();
   
   int columns=m.getColumnCount();
   //显示列,表格的表头
   for(int i=1;i<=columns;i++)
   {
    System.out.print(m.getColumnName(i));
    System.out.print("\t\t");
   }
   
   System.out.println();
   //显示表格内容
   while(rs.next())
   {
    for(int i=1;i<=columns;i++)
    {
     System.out.print(rs.getString(i));
     System.out.print("\t\t");
    }
    System.out.println();
   }

时间: 2024-08-24 16:54:33

遍历ResultSet,行列要从1开始的相关文章

JSP 遍历ResultSet中的数据并转化为表格

在网上找了很久遍历ResultSet中的数据并将其依次填充到一个网页表格中,有说将ResultSet数据转化到一个二维数组中,再依次输出,但二位数组需要提前指定存储大小,不方便扩增.其实用如下方法即可: while(rs.next()){        out.println("<tr><td>"+rs.getString(1)+"</td><td>" +rs.getString(2)+"</td>

如何获取ResultSet的行数和列数

当我们执行数据库查询返回一个ResultSet的时候,很多情况下我们需要知道这个ResultSet的大小,即它的行数和列数.我们知道它的列数可以通过resultSet.getMetaData().getColumnCount()很容易地得到,然而,java API没有提供直接访问ResultSet行数的接口. 这个时候,有三个办法可以解决: 1.改用select count语句,然后直接从ResultSet里面获取结果: try { Statement statement = connectio

Java数据库ResultSet转json实现

现在有很多json相关的Java工具,如json-lib.gson等,它们可以直接把JavaBean转换成json格式. 在开发中,可能会从数据库中获取数据,希望直接转成json数组,中间不通过bean. 比如进行下面的转换: 数据表: id name age 1 xxg 23 2 xiaoming 20 转换成json数组: [            {               "id": "1",                "name"

JdbcTemplate查询数据 三种callback之间的区别

JdbcTemplate针对数据查询提供了多个重载的模板方法,你可以根据需要选用不同的模板方法. 如果你的查询很简单,仅仅是传入相应SQL或者相关参数,然后取得一个单一的结果,那么你可以选择如下一组便利的模板方法: int queryForInt(String sql) int queryForInt(String sql, Object[] args) long queryForLong(String sql) long queryForLong(String sql, Object[] ar

JDBC规范(转)

公司开发一直用的是ibatis,进来心血来潮想研究一下源码,可是发现自己的JDBC似乎已经忘得差不多了,为了自己能顺利的研读ibatis的源码,于是乎找到了 XIAO_DF的JDBC规范的博客,转到自己博客方便阅读,感谢技术老铁的分享! JDBC接口规范 前言 JDBC(JavaDatabase Connectivity)表示Java查询引擎连接,由一组用Java编程语言编写的类和接口组成.JDBC为Java程序访问关系型查询引擎提供了编程接口,为查询引擎开发人员提供了一个标准的API,使他们能

java Json.org.jar

servlet我们可以把他当成一个数据媒介,他最终执行的是将方法体内获取处理后的数据,返回给请求的客户端,或以XML格式,或以JSON格式 ,我这里是使用的JSON格式数据,所以下面我要说org.json.jar这个库及我封装的返回数据的方式. 这个库有两个核心类->JsonObject 和JsonArray 一.JsonObject  JsonObject 这个类就相当于IOS中的NSDictionary,转换后是以键值对的方式将数据呈现给客户端调用人员,当然这里我们返回的是JSON字符,所以

【jdbcTemplate】使用jdbcTemplate查询的三种回调

用于查询的回调接口定义主要有以下三种: org.springframework.jdbc.core.ResultSetExtractor.  基本上属于JdbcTemplate内部使用的Callback接口,相对于下面两个Callback接口来说,ResultSetExtractor拥有更多的控制权,因为使用它,你需要自行处理ResultSet: public interface ResultSetExtractor {  Object extractData(ResultSet rs) thr

jdbc学习

加载并注册数据库驱动:在项目里配置数据库驱动,移除也是在这里面移除:右击项目-> Build Path -> Configure Build Path ->libraries -> Add Exteranl JARs Driver接口: 数据库的jdbc驱动类名:com.mircrosoft.jdbc.sqlserver.SQLServlerDriver. oracle.jdbc.driver.OracleDriver com.mysql.jdbc.Driver 数据库连接:Con

ResultMap详解

MyBatis:ResultMap详解 一.前言   MyBatis是基于"数据库结构不可控"的思想建立的,也就是我们希望数据库遵循第三范式或BCNF,但实际事与愿违,那么结果集映射就是MyBatis为我们提供这种理想与现实间转换的手段了,而resultMap就是结果集映射的配置标签了. 二.从SQL查询结果到领域模型实体 在深入ResultMap标签前,我们需要了解从SQL查询结果集到JavaBean或POJO实体的过程. 1. 通过JDBC查询得到ResultSet对象 2. 遍历