1.直接使用get方法獲取對應的類型的數據,當然需要結合while(resultset.next())
如:
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) 獲取對應的值,然后通過反射得到對應的屬性,通過屬性給對象賦值。
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);