ResultSet基本使用

1.直接使用get方法獲取對應的類型的數據,固然須要結合while(resultset.next())spa

  如:code

 ResultSet rs = ps.executeQuery();
            if(rs.next()){
                employee=new Employee(rs.getLong(1),rs.getString(2),rs.getString(3),rs.getInt(4));
            }

2.使用getMetaData()方法,獲得表結構,包括列名,列的個數,列的數據類型。而後遍歷對象

主要使用:列的個數,列名,經過列名可使用resultSet getObject(name)  獲取對應的值,而後經過反射獲得對應的屬性,經過屬性給對象賦值。blog

 ResultSetMetaData rsmd = rs.getMetaData();// 獲得記錄集,元素對象。
            // 經過此對象能夠獲得表的結構,包括,列名,列的個數,列數據類型
            while(rs.next()){
                T m = cls.newInstance();// 經過反射獲得實體對象。
                for(int i=0;i<rsmd.getColumnCount();i++){
                   String col_name = rsmd.getCatalogName(i+1);// 獲取列名
                    Object value = rs.getObject(col_name);//獲取列對應的值。
                    Field field = cls.getDeclaredField(col_name);//獲取對象對應的名稱屬性,而後給屬性賦值
                    field.setAccessible(true);// 讓能夠訪問私有屬性
                    field.set(m,value);// 給對象私有屬性賦值
                }
                list.add(m);
相關文章
相關標籤/搜索