如何解决JDBI 错误没有为类型注册映射器
我正在尝试创建一个方法,该方法从我的数据库中的客户表中返回所有用户,但此代码:
try {
List<Customer> customer = jdbi.open().createquery("SELECT * FROM customer")
.mapTo(Customer.class).list();
} catch (Exception e) {
System.out.println(e);
}
返回错误:
org.jdbi.v3.core.mapper.NoSuchMapperException: No mapper registered for type com.customer.Customer
我看到另一个关于这个错误的帖子,他们说这个错误是由于类模型和数据库表之间的映射而发生的,但是我的应用程序是用纯 Java 和 jdbi 3 构建的我没有使用 Spring 所以如何映射此代码的结果将此结果转换为客户列表?
解决方法
我修复了这个创建这个类
public class CustomerMapper implements RowMapper<Customer>{
@Override
public Customer map(ResultSet rs,StatementContext ctx) throws SQLException {
return new Customer(rs.getInt("id"),rs.getString("uuid"),rs.getString("name"),rs.getString("email"),rs.getString("birthDate"),rs.getString("cpf"),rs.getString("gender"),rs.getDate("createdAt"),rs.getDate("updateAt"));
}
}
.mapTo(Customer.class).list();
在哪里,我把 .map(new CustomerMapper()).list();
引用我创建的地图
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。