且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

ResultSet转List

更新时间:2022-10-04 17:20:07

Role是一个实体类,传进来的sql,查询的是rule_id和rule_name两个字段,所以要指定一下具体的值


  1. Role role = new Role(); 
  2. role.setId(rs.getInt("role_id")); 
  3. role.setName(rs.getString("role_name")); 

完整代码如下:
 


  1. public static Connection getConnectionByJDBC() {    
  2.         Connection conn = null;    
  3.         try { // 装载驱动类    
  4.             Class.forName("oracle.jdbc.driver.OracleDriver");    
  5.         } catch (ClassNotFoundException e) {    
  6.             System.out.println("装载驱动异常!");    
  7.             e.printStackTrace();    
  8.         }    
  9.         try { // 建立JDBC连接    
  10.             conn = DriverManager.getConnection(    
  11.                     "jdbc:oracle:thin:@192.168.0.3:1521:test""test",    
  12.                     "test");    
  13.         } catch (SQLException e) {    
  14.             System.out.println("链接数据库异常!");    
  15.             e.printStackTrace();    
  16.         }    
  17.         return conn;    
  18.     }   

  1. public static List findByUserCodeAndDeptCode(String hql) {  
  2.         Connection conn = getConnectionByJDBC();    
  3.         List roleList = new ArrayList();  
  4.         try { // 创建一个JDBC声明    
  5.             Statement stmt = conn.createStatement(ResultSet.TYPE_FORWARD_ONLY,    
  6.                     ResultSet.CONCUR_READ_ONLY);    
  7.             // 执行查询    
  8.             ResultSet rs = stmt.executeQuery(hql);    
  9.             while (rs.next()) {    
  10.                 Role role = new Role();  
  11.                 role.setId(rs.getInt("role_id"));  
  12.                 role.setName(rs.getString("role_name"));  
  13.                 roleList.add(role);  
  14.             }    
  15.             //insert ,update ,delete用executeUpdate方法    
  16.         } catch (SQLException e) {    
  17.             System.out.println(e.getMessage());    
  18.             e.printStackTrace();    
  19.         } finally {    
  20.             // 预防性关闭连接(避免异常发生时在try语句块关闭连接没有执行)    
  21.             try {    
  22.                 if (conn != null)    
  23.                     conn.close();    
  24.             } catch (SQLException e) {    
  25.                 System.out.println(e.getMessage());    
  26.                 e.printStackTrace();    
  27.             }    
  28.         }    
  29.         return roleList;  
  30.     } 

 本文转自sucre03 51CTO博客,原文链接:http://blog.51cto.com/sucre/536655,如需转载请自行联系原作者