1. 程式人生 > >把對資料庫的查詢結果寫在BeanList中

把對資料庫的查詢結果寫在BeanList中

1.首先使用的資料庫是corejava

2.使用的表示Employee,表中的兩個欄位是id和name。也可以有其他欄位

3.使用DbUtil把查詢結果封裝在BeanList中

4.新建Emp表

public class Empl{
private Integer id;
private String name;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}

}

5.引入 commons-dbutils-1.1.jar包 ,把查詢結果放到BeanList中,通過使用getter方法可以輸出物件的id和name屬性的值,即表中id和name欄位的值 

public class JDBCExample4 {
public static void main(String[] args){

String url="jdbc:mysql://localhost:3306/corejava";
String username="root";
String password="123456";
String jdbcDriver = "com.mysql.jdbc.Driver";
DbUtils.loadDriver(jdbcDriver);
Connection conn = null;
try {
conn = DriverManager.getConnection(url,username,password);
QueryRunner qr = new QueryRunner(); 

String query = "Select * from Employee";
List results = (List) qr.query(conn,query,new BeanListHandler(Empl.class));  //把查詢結果放到BeanList中
System.out.println("輸出從表中的查詢結果如下:");


for(int i=0;i<results.size();i++){  //通過使用getter方法可以輸出物件的id和name屬性的值,即表中id和name欄位的值 

Empl e = (Empl) results.get(i); 
System.out.println("ID: "+e.getId()+" name: "+e.getName());

}

System.out.println("輸出查詢結果完畢");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally{
DbUtils.closeQuietly(conn);
}



}

6.輸出的結果是employee表中的id和name的值