QueryRunner类中的方法参数为什么是反射
@Override
public User findById(String id) {
Connection conn = DbUtils.getConnection();
QueryRunner qr = new QueryRunner();
User user = null;
try {
//问题描述:QueryRunner是阿帕奇简化SQL查询的jar包中的类
//query中的第三个参数为什么要用new BeanHandler<>(User.class),其中的反射(User.class)不明白为什么要用
user = qr
.query(conn, "SELECT * FROM `user` WHERE id = ?", new BeanHandler<>(User.class),
id);
} catch (SQLException e) {
e.printStackTrace();
} finally {
DbUtils.closed(conn);
}
return user;
}
11
收起
正在回答
1回答
同学你好,
这里会通过传入的Class类,反射会通过无参构造来创建对象,然后把查询返回的结果封装到创建的对象中去。
祝学习愉快。
3. Java 数据库开发与实战应用
- 参与学习 人
- 提交作业 357 份
- 解答问题 8016 个
本阶段将带你学习MySQL数据库,JDBC接口,MyBatis框架等,带你掌握的数据的存放和管理。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星