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);
时间: 2024-10-16 23:50:30