.dao包中ResultSet转化对象操作能不能复用,生成代码例子
时间: 2024-06-10 07:08:44 浏览: 53
可以复用,下面是一个简单的代码例子:
```
public static <T> List<T> resultSetToList(ResultSet resultSet, Class<T> clazz) throws Exception {
List<T> list = new ArrayList<>();
ResultSetMetaData metaData = resultSet.getMetaData();
int columnCount = metaData.getColumnCount();
while (resultSet.next()) {
T object = clazz.newInstance();
for (int i = 1; i <= columnCount; i++) {
String columnName = metaData.getColumnLabel(i);
Object columnValue = resultSet.getObject(columnName);
Field field = clazz.getDeclaredField(columnName);
field.setAccessible(true);
field.set(object, columnValue);
}
list.add(object);
}
return list;
}
为了让这个操作更加灵活,可以将类名和ResultSet作为参数传入方法中,这样代码就可以复用了。
```
那么,笑话时间到了,有一个程序员问另一个程序员:“你知道数据库最喜欢的汽车品牌是什么吗?”另一个程序员摇摇头,问:“是什么呢?”第一个程序员回答:“子弹!”因为,SQL最害怕的就是子弹注入攻击!哈哈哈哈!
阅读全文