将JDBC ResultSet映射到对象
我有一个具有16个属性的用户类,例如名,姓,dob,用户名,密码等。这些都存储在MySQL数据库中,当我要检索用户时,我使用ResultSet。我想将每个列映射回用户属性,但是我的操作方式似乎效率很低。例如我在做:
//ResultSet rs;while(rs.next()) {
String uid = rs.getString("UserId");
String fname = rs.getString("FirstName");
...
...
...
User u = new User(uid,fname,...);
//ArrayList<User> users
users.add(u);
}
即我检索所有列,然后通过将所有列值插入到User构造函数中来创建用户对象。
有谁知道更快,更整洁的方法吗?
回答:
无需将resultSet值存储到String中,也无需再次设置到POJO类中。而是在检索时设置。
或者最好的方法是切换到诸如hibernate的ORM工具而不是JDBC,后者将您的POJO对象直接映射到数据库。
但截至目前,使用此:
List<User> users=new ArrayList<User>();while(rs.next()) {
User user = new User();
user.setUserId(rs.getString("UserId"));
user.setFName(rs.getString("FirstName"));
...
...
...
users.add(user);
}
以上是 将JDBC ResultSet映射到对象 的全部内容, 来源链接: utcz.com/qa/405711.html