首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Dropwizard JDBI升级到JDBI 3

将Dropwizard JDBI升级到JDBI 3
EN

Stack Overflow用户
提问于 2017-06-26 21:37:24
回答 2查看 3.6K关注 0票数 5

既然我想使用包含在其中的联接功能,那么如何将dropwizard 2.78升级到jdbi版本3。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-06-27 17:54:27

这里的项目成员。

在v3最终版本发布之前,我们将发布一个更完整的迁移指南。与此同时,我们的一个用户刚刚提交了一个不错的更改列表,作为起点:

(见https://github.com/jdbi/jdbi/issues/715)

  • 重命名的类(不像删除导入和让IDE修复它那么简单):
代码语言:javascript
复制
- DBI -> Jdbi
- IDBI -> Jdbi
- DBIException -> JdbiException

  • Jdbi的构造函数已被创建()工厂方法替换。
  • 将ResultSetMapper替换为RowMapper,并且map方法不再具有行索引。Jdbi 3中存在一个名为ResultSetMapper的类,但它的用途不同。@Mapper改为@UseRowMapper。将Jdbi上的registerMapper()替换为registerRowMapper()。
  • @BindIn被@BindList取代,不再需要StringTemplate。
  • 对于默认的Jdbi模板,不引用尖括号,这意味着IntelliJ在您在Tools ->数据库->用户模式下配置参数模式之后理解语法。
  • 查询不再具有默认的Map类型,因此无法直接在其上调用list()。在调用list()之前调用mapToMap()。
  • TransactionStatus不再存在。
  • TransactionConsumer.useTransaction()现在只接受一个句柄,所以当在Jdbi或句柄上使用useTransaction()方法时,需要删除TransactionStatus参数。
  • TransactionCallback.inTransaction()现在只接受一个句柄,所以当在Jdbi或句柄上使用inTransaction()方法时,需要删除TransactionStatus参数。
  • CallbackFailedException不再存在。各种功能接口(如HandleConsumer、HandleCallback、TransactionalConsumer和TransactionalCallback )现在可以抛出任何异常类型(但限制使用泛型以避免不必要的检查异常处理)。
  • 默认情况下,SQL对象支持不再可用。它必须注册每个创建的Jdbi实例。
票数 9
EN

Stack Overflow用户

发布于 2019-02-15 18:22:19

请参阅Dropwizard用户手册中的Dropwizard JDBI3和Jdbi 3开发人员指南中的从v2升级到v3

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44769057

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档