问题标签 [jdbi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
dependency-injection - Dropwizard 和 Guice:注入环境
我目前正在构建一个基于 Dropwizard + Guice + Jersey 的应用程序,其中数据库访问暂时由 JDBI 处理。
我想要实现的是拥有典型的企业架构,其中资源访问服务类访问 DAO 类,该类又访问数据库。以适当的 DI 方式将所有这些连接起来会很好,尽管我想如果其他所有方法都失败了,我可以在应用程序的 run() 方法中构建我的对象图。
所以,我遇到了之前在这里提到的这个问题:获取 DBIFactory 需要环境和配置,它们需要在 Guice 执行其注入魔法时而不是在 run()-time 时可用.
作为一个 Dropwizard 和 Guice 菜鸟,到目前为止,我设法整合的是我的 DAO 对象需要一个 Provider,这与
将其注册为单例提供程序应该让我将 UserDAO 注入我的服务中。
现在,我们如何真正将环境注入到 Provider 中?目前我被困在 Guice 抱怨没有为环境找到合适的构造函数,所以它试图实例化它而不是从 Dropwizard 本身获取它。
看起来这是可行的;有一个dropwizard-guice包,我认为它的 DropWizardEnvironmentModule 是我需要的。但我觉得我只是在这里错过了一些难题,以了解如何将事物组合在一起。到目前为止,我还没有找到一个完整的工作示例......
java - JDBI 可以绑定方法签名中没有的附加值吗?
是否可以让 JDBI 绑定比方法签名中指定的参数更多的参数?例如:
这里我想添加一些代码,可以自动将一些值绑定到:id
占位符。那可能吗?
jdbc - 在 JDBi 中映射聚合结果
聚合查询是select min(sal) as minSal, max(sal) maxSal from Emp
.
我认为只为这个用例创建一个是多余的Mapper
。VO
是否有预定义mapper
的我可以将结果发布到map
例如存在于的位置JDBi
?
java - JDBI批处理操作是原子的吗?
JDBI 批处理操作(插入或更新)是原子的吗?还是我需要将它们包装在事务块中?
dropwizard - jdbi return autogenerated value on inserts
I am playing with dropwizard and I want to build a REST application that has various foreign-key relations in the entities.
For example given the following 3 tables:
I have started to implement a customerDAO that reads the data of the customer table an dthe referenced tables with one SQL query, that was not very complicated:
(For the sake of brevity, I skip the mapper, since that is not my actual question)
Now I want to insert a new customer, I have all the required data, including the data which belongs in the referenced tables.
I could not find a way how to execute multiple queries with jdbi annotations, so I figured, I have to create a DAO method for every one of the tables and insert the data from within java, updating the foreign key references manually.
But also this does not work because I could not find a way to read the autogenerated ID value after an insert.
Any idea how I could approach this problem so I can keep the references correct?
java - 休眠与 JDBI
我正在使用 Dropwizard 框架(版本 0.7.0)构建 Web 服务。它涉及对数据库执行一些只读查询,操作结果集,然后返回该数据集。我使用 MySQL 作为数据库引擎。由于我是这个框架的新手,我想知道我应该选择哪个选项:Hibernate 或 JDBI。
java - 使用 jdbi 执行创建或更新
对于一个小的新项目,我决定尝试一下JDBI(通常我使用 hibernate/jpa)。
我喜欢使用@SqlUpdate/@SqlQuery 的轻量级、基于注释的 dao 创建。
但是:在某些情况下,我不确定是要创建实体还是更新现有实体。我会放置一个“选择”语句,并根据它的返回值使用插入或更新语句。
问题:jdbi 中的“仅接口”dao 是否以某种方式支持这一点?还是我必须自己编写一个“createOrUpdate”方法(使自动生成的 dao 或多或少过时)?
感谢您的任何提示。
java - 可选的 jDBI 参数
jDBI 查询是否可以有可选(空)参数?我试图让可选参数在数据库查询中工作。我正在使用 dropwizard。
传递了 authorId 时查询有效,但当它为 NULL 时给我这个错误:
这是我从中调用的资源路线:
从我读过的内容来看,这是可能的,所以我猜我遗漏了一些东西或有一个明显的错误。任何帮助将不胜感激!
仅供参考 - 我也尝试过没有 guava Optional (由 dropwizard 支持) - 只是发送一个 authorId 作为一个空的 Long 。只要它不为空,这也有效。
java - NoSuchMethodError JDBI
我正在尝试使用这种方法在我的班级中创建一个表格 :
我的 BindExamples 界面:
结果:我有一个错误:
任何想法我做错了什么?我正在尝试与http://jdbi.codehaus.org/five_minute_intro/中的相同
我用:
- JDBI库2.48.2版本
- 蚀
- mysql
谢谢你的帮助!
orm - 用于 cassandra 的 JDBI 类层
我正在开发一个以 cassandra 作为后端的模块。为 cassandra 搜索 JDBI 类库。Cassandra java 驱动程序是我的主要选择。想知道在 cassandra java 驱动程序之上是否存在用于更高级别抽象的库。