zoukankan      html  css  js  c++  java
  • JDBC--Result 获取返回集合

    1. package jdbc.chap05;  
    2.   
    3. import java.sql.Connection;  
    4. import java.sql.PreparedStatement;  
    5. import java.sql.ResultSet;  
    6. import java.util.ArrayList;  
    7. import java.util.List;  
    8.   
    9. import jdbc.util.DbUtil;  
    10. import model.Person;  
    11.   
    12. public class sec01 {  
    13.   
    14.     private static DbUtil dbUtil=new DbUtil();  
    15.     /** 
    16.      * 遍历查询结果1 
    17.      * @throws Exception 
    18.      */  
    19.     private static void listPerson()throws Exception{  
    20.         Connection con=dbUtil.getCon();//获取连接  
    21.         String sql="select * from t_student";  
    22.         PreparedStatement pstmt=con.prepareStatement(sql);  
    23.         ResultSet rs=pstmt.executeQuery();//返回2维结果集ResultSet  
    24.         while (rs.next()){  
    25.             int id=rs.getInt(1);//获取第一个列的值 编号ID  
    26.             String name=rs.getString(2);//获取第二个列的值 编号 name  
    27.             int age=rs.getInt(3);//获取第三列的值 编号age  
    28.             System.out.println("学生编号:"+id+"学生姓名:"+name+"学生年龄:"+age);  
    29.             System.out.println("========================================================");  
    30.               
    31.         }  
    32.     }  
    33.     /** 
    34.      * 遍历查询结果2 
    35.      * @throws Exception 
    36.      */  
    37.     private static void listPerson2()throws Exception{  
    38.         Connection con=dbUtil.getCon();//获取连接  
    39.         String sql="select * from t_student";  
    40.         PreparedStatement pstmt=con.prepareStatement(sql);  
    41.         ResultSet rs=pstmt.executeQuery();//返回2维结果集ResultSet  
    42.         while (rs.next()){  
    43.             int id=rs.getInt("id");//获取第一个列的值 编号ID  
    44.             String name=rs.getString("name");//获取第二个列的值 编号 name  
    45.             int age=rs.getInt("age");//获取第三列的值 编号age  
    46.             System.out.println("学生编号:"+id+"学生姓名:"+name+"学生年龄:"+age);  
    47.             System.out.println("========================================================");  
    48.               
    49.         }  
    50.     }  
    51.     private static List<Person> listPerson3()throws Exception{  
    52.         List<Person> personlist=new ArrayList<Person>();    
    53.         Connection con=dbUtil.getCon();//获取连接  
    54.         String sql="select * from t_student";  
    55.         PreparedStatement pstmt=con.prepareStatement(sql);  
    56.         ResultSet rs=pstmt.executeQuery();//返回2维结果集ResultSet  
    57.         while (rs.next()){  
    58.             int id=rs.getInt("id");//获取第一个列的值 编号ID  
    59.             String personName=rs.getString("name");//获取第二个列的值 编号 name  
    60.             int age=rs.getInt("age");//获取第三列的值 编号age  
    61.         Person person=new Person(id, personName, age);  
    62.         personlist.add(person);  
    63.           
    64.               
    65.         }  
    66.         return personlist;  
    67.             
    68.     }  
    69.     public static void main(String[] args) throws Exception {  
    70.   
    71. //      listPerson();  
    72. //      listPerson2();  
    73.         List<Person> personList=listPerson3();  
    74.         for (Person person:personList){  
    75.             System.out.println(person.toString());  
    76.         }  
    77.     }  
    78. }  

    关键点:重写ToString

    [java] view plain copy
    1. package model;  
    2. /** 
    3.  * 个人信息  
    4.  * @author MC-DS 
    5.  * 
    6.  */  
    7.   
    8. public class Person {  
    9.   
    10.     private int id;  
    11.     private String personName;  
    12.     private int age;  
    13.       
    14.       
    15.       
    16.     public Person(int id, String personName, int age) {  
    17.         super();  
    18.         this.id = id;  
    19.         this.personName = personName;  
    20.         this.age = age;  
    21.     }  
    22.     public Person(String personName, int age) {  
    23.         super();  
    24.         this.personName = personName;  
    25.         this.age = age;  
    26.     }  
    27.     public int getId() {      
    28.         return id;  
    29.     }  
    30.     public void setId(int id) {  
    31.         this.id = id;  
    32.     }  
    33.     public String getPersonName() {  
    34.         return personName;  
    35.     }  
    36.     public void setPersonName(String personName) {  
    37.         this.personName = personName;  
    38.     }  
    39.     public Integer getAge() {  
    40.         return age;  
    41.     }  
    42.     public void setAge(int age) {  
    43.         this.age = age;  
    44.     }  
    45.     @Override  
    46.     public String toString() {  
    47.         // TODO Auto-generated method stub  
    48.         return "["+this.id+","+this.personName+","+this.age+"]";  
    49.     }  
    50.       
    51. }  

    写前:
    [plain] view plain copy
    1. model.Person@27d43d30  
    2. model.Person@5efd2ebd  
    3. model.Person@4007ab03  
    4. model.Person@376c72cc  
    5. model.Person@30e4cb81  
    6. model.Person@7cec9b3a  
    7. model.Person@11c33ce9  
    8. model.Person@28d3ee1b  
    9. model.Person@71b5438d  
    10. model.Person@3366184d  
    11. model.Person@73c58197  
    12. model.Person@2bbf1be2  

    写后:
     
    [java] view plain copy
    1. [1,ling,18]  
    2. [2,李小龍,18]  
    3. [6,劉德華,17]  
    4. [7,古天樂,37]  
    5. [8,李小龍,18]  
    6. [22,李小龍,18]  
    7. [222,李小龍,18]  
    8. [233,李小龍,18]  
    9. [656,李小龍,18]  
    10. [658,李小龍,18]  
    11. [659,郑伊健,37]  
    12. [661,陈小春,32] 
  • 相关阅读:
    IDEA 2019.3 最新激活教程,有效期到 2089 年!
    【猫狗数据集】读取数据集的第二种方式
    【猫狗数据集】计算数据集的平均值和方差
    【colab pytorch】其它注意事项
    【colab pytorch】训练和测试常用模板代码
    【colab pytorch】数据预处理
    【colab pytorch】提取模型中的某一层
    【colab pytorch】模型权重初始化
    【猫狗数据集】使用预训练的resnet18模型
    【猫狗数据集】使用top1和top5准确率衡量模型
  • 原文地址:https://www.cnblogs.com/shizhijie/p/7459003.html
Copyright © 2011-2022 走看看