直接上下代码:

 package com.learn.jdbc.chap05;

 import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List; import com.learn.jdbc.model.Album;
import com.learn.jdbc.util.DbUtil;
/**
* 使用ResultSet结果集(数据查询)
* @author Administrator
*
*/
public class Demo1 { private static DbUtil dbUtil=new DbUtil(); private static void listAlbum() throws Exception{
Connection con = dbUtil.getCon();
String sql="select * from sp_album";
PreparedStatement pstmt = con.prepareStatement(sql);
ResultSet rs = pstmt.executeQuery(); // 返回结果集 ResultSet
while(rs.next()){
// 下面的写法 在工作中 很少用
int id=rs.getInt(1);
String name=rs.getString(2);
int uid=rs.getInt(3);
long time=rs.getLong(4);
System.out.println("编号:"+id+",名称:"+name+",会员id:"+uid+",添加时间:"+time);
System.out.println("-----------------------");
} } private static void listAlbum2() throws Exception{
Connection con = dbUtil.getCon();
String sql="select * from sp_album";
PreparedStatement pstmt = con.prepareStatement(sql);
ResultSet rs = pstmt.executeQuery(); // 返回结果集 ResultSet
while(rs.next()){
// 下面的写法 在工作中 经常这么写
int id=rs.getInt("id");
String name=rs.getString("name");
int uid=rs.getInt("uid");
long time=rs.getLong("add_time");
System.out.println("编号:"+id+",名称:"+name+",会员id:"+uid+",添加时间:"+time);
System.out.println("-----------------------");
} } private static List<Album> listAlbum3() throws Exception{
List<Album> albumList = new ArrayList<Album>(); Connection con = dbUtil.getCon();
String sql="select * from sp_album";
PreparedStatement pstmt = con.prepareStatement(sql);
ResultSet rs = pstmt.executeQuery(); // 返回结果集 ResultSet
while(rs.next()){
// 下面的写法 在工作中 经常这么写
int id=rs.getInt("id");
String name=rs.getString("name");
int uid=rs.getInt("uid");
long time=rs.getLong("add_time"); Album ab=new Album(id, name, uid, time);
albumList.add(ab);
} return albumList;
} public static void main(String[] args) throws Exception {
/*listAlbum();
System.out.println("=============================================");
listAlbum2();*/
List<Album> abInfo = listAlbum3();
for(Album abm:abInfo){ // 此处的abm默认输出是调用父类的toString方法,要输出自定义信息,需要重写toString方法
System.out.println(abm);
//System.out.println(abm.getName());
}
}
}

使用ResultSet结果集查询数据的更多相关文章

  1. JDBC连接数据以及详细的ResultSet结果集解释

    一.数据库连接 (前面为jdbc的其他参数,文章下部分为ResultSet详解) ResultSet rs = st.executeQuery(sqlStr) 1. java的sql框架支持多种数据库 ...

  2. mysql 查询数据时按照A-Z顺序排序返回结果集

    mysql 查询数据时按照A-Z顺序排序返回结果集 $sql = "SELECT * , ELT( INTERVAL( CONV( HEX( left( name, 1 ) ) , 16, ...

  3. Oracle数据库使用游标查询结果集所有数据

    --Oracle使用游标查询结果集所有数据 DECLARE myTabelName NVARCHAR2():=''; --表名 myTableRowComment NVARCHAR2():=''; - ...

  4. MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  5. 使用JDBC从数据库中查询数据

    * ResultSet 结果集:封装了使用JDBC 进行查询的结果 * 1. 调用Statement 对象的 executeQuery(sql) 方法可以得到结果集 * 2. ResultSet 返回 ...

  6. 使用JDBC从数据库中查询数据的方法

    * ResultSet 结果集:封装了使用JDBC 进行查询的结果 * 1. 调用Statement 对象的 executeQuery(sql) 方法可以得到结果集 * 2. ResultSet 返回 ...

  7. JDBC连接数据库方法的封装,以及查询数据方法的封装

    (在上一篇文章中,我们详细的介绍了连接数据库的方法,以及eclipse操作数据库信息的相关方法,在这里我们将主要讲封装.) 主要内容: 一般的连接数据库测试 把连接数据库的方法封装成一个类和测试 一个 ...

  8. JDBC——ResultSet结果集对象

    ResultSet结果集对象,封装结果.它是怎么做到封装结果的呢? 游标,类似指针索引最初指在“列名”上,要取到数据就需要让游标向下移动移动后就指向了第一行数据,然后通过一些方法把第一行的每一列都取出 ...

  9. 从零自学Hadoop(16):Hive数据导入导出,集群数据迁移上

    阅读目录 序 导入文件到Hive 将其他表的查询结果导入表 动态分区插入 将SQL语句的值插入到表中 模拟数据文件下载 系列索引 本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并 ...

随机推荐

  1. iOS自动化探索(六)自动化测试框架pytest - fixtures

    Fixture介绍 fixture是pytest特有的功能,它用pytest.fixture标识,定义在函数前面.在编写测试函数的时候,可以将此函数名称做为传入参数,pytest将会以依赖注入方式,将 ...

  2. 【scala】集和映射

    Scala同时提供了集(Set)和映射(Map)的可变和不可变的不同选择,但使用同样的简单名字,可以通过类继承的关系来区分可变和不可变版本. 如图所示,左边的为不可变集,右边的为可变集. //我们创建 ...

  3. SurfaceView基本使用--动态画正弦函数

    package com.zzw.TestSurfaceView; import android.content.Context; import android.graphics.Canvas; imp ...

  4. Android自定义控件之仿美团下拉刷新

    美团的下拉刷新分为三个状态: 第一个状态为下拉刷新状态(pull to refresh),在这个状态下是一个绿色的椭圆随着下拉的距离动态改变其大小. 第二个部分为放开刷新状态(release to r ...

  5. Selenium2+Python自动化学习笔记(第1天)

    参考[http://blog.csdn.net/henni_719/article/details/51096531]大神写的笔记,多谢大神共享. 哈哈,今天又找到一位大神写的Selenium2+Py ...

  6. WeChat on Web 部分功能模拟实现

    Flask from flask import Flask,request,render_template,session,jsonify import time import requests im ...

  7. lzugis——Arcgis Server for JavaScript API之自定义InfoWindow

    各位看到这个标题不要嫌烦,因为本人最近一直在研究相关的问题,所以相关文章也只能是这些,同时希望看过我的文章的朋友,我的文章能够给你帮助. 在前面的两篇相关的文章里面,实现InfoWindow是通过di ...

  8. 移动元素时,translate要比margin好

    比如 做全屏轮播时,父元素往往是被子元素撑起来的,那你设置父元素的margin时,往往会感染到子元素,如下图: 而用translate3d就不会出现这种效果:

  9. 同一局域网环境下的arp欺骗和中间人攻击(mac)

    最近读了一篇有关arp欺骗和中间人攻击的文章,于是乎就想着自己实现一下,顺便验证下微信在回话劫持后的安全性. 1.本机环境 Macbook Air:OS X 10.11 El Captain 2.推荐 ...

  10. MarkDown小技巧

    MarkDown编辑 MarkDown编辑的时候,可以直接插入HTML的编辑手法. 例如如果想要将一段话中的某一个或者某几个字设为其他颜色,但又不想将这几个字与这段话分割的时候,可以这样 你可以这样将 ...