直接上下代码:
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());
}
}
}