问题标签 [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.
java - JDBI 中 assertThat 的目的是什么?
我正在浏览我在 github 中找到的代码库。我在代码中发现了一组包含以下函数的行:assertThat
任何帮助表示赞赏。
mysql - JDBI ALTER TABLE DROP 分区
嘿,我在使用 JDBI 更改表分区时遇到问题。这是我尝试运行的查询示例:
当从表“table1”中删除分区“P_1”时,这在 MySQL 中运行良好。
我在我的java代码中实现了它,如下所示:
并像这样调用这个函数
但是,这会导致以下错误:
原因:org.skife.jdbi.v2.exceptions.UnableToExecuteStatementException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: 你的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 ''P_1'' 附近使用正确的语法 [语句:“ALTER TABLE table1 DROP PARTITION :partition;”,位于:“ALTER TABLE table1 DROP PARTITION :partition; ", rewritten:"/* HiveDropBoxDBI.deletePartition */ ALTER TABLE table1 DROP PARTITION ?;", arguments:{ positional:{}, named:{partition:'P_1'}, finder:[]}]
不支持此功能吗?还是我的语法遗漏了什么?
谢谢
postgresql - 使用类型注释时的 JDBI 查询?
根据Dropwizard 文档,我正在编写一个 Dropwizard 应用程序,该应用程序需要连接到数据库,并使用SQL 对象来查询数据库。
我遇到的问题是当我的查询使用类型说明符 ( ::
) 时混淆了绑定变量。就像是
SELECT
(a,
b,
c)::user_type
FROM ...
WHERE id = :id
解析器::user_type
作为参数占位符读取。当我用 逃脱它们时\
,它说查询没有返回任何行,但是如果我通过 运行查询psql
,它确实如此,所以我猜它不是那么简单。任何帮助,将不胜感激。
谢谢!:D
java - 从 Java 中检索 mssql DB 中数百万条记录的最佳且内存安全的方法?
我有一张表,里面有大约 600 万条记录。我需要检索ID
要在 Java 中处理的每一行。这ID
是一个字母数字 nvarchar(8)。我想以一种安全有效的方式做到这一点。
以下是我的方法,其中我:选择前 1000 条记录。处理那些。选择 ID 大于我最后一组记录中最大 ID 的下 1000 条记录。继续,直到我检索到少于 1000 条记录的集合。
我相信我的策略将以内存安全的方式检索所有记录,但不知道是否有更快/更好的策略。(也不肯定该策略会检索所有记录,我需要在资源更多的环境中进行测试,我的非常不稳定)。
java - JDBI 未注册映射器
我正在评估 JDBI 作为 Spring JDBC 和 MyBatis 的可能替代方案,但遇到了一些问题。我将 JDBI 与 Spring Boot 1.2.5 一起使用,所以 Spring 4。
我得到以下堆栈跟踪,如下所示。我究竟做错了什么?文档似乎有点缺乏。
这是我对 Spring 的配置
这是我的用户类
我的 DAO
还有我的映射器
java - 需要帮助使用 jdbi 在 postgresql 中存储嵌套的 json
我正在尝试使用带有 dropwizard 和 jdbi 的 JSONB 数据类型将 JSON 存储在 postgresql 9.4 数据库中。我能够存储数据,但是如果我的 json 比单个级别更深,则 json 会变成字符串而不是嵌套的 json。
比如下面的json
实际上被存储为
我的 DAO 中的方法签名是
我显然有问题,但我似乎无法找出存储这些嵌套数据的正确方法。
jdbi - 如何将 JDBI @GetGeneratedKeys 与 Mapper 结合使用
我希望 JDBI 将自动生成的主键(长值)转换为另一个类。
我的道:
}
我的映射器:
当我运行我的代码时,我在 FigureItOutResultSetMapper.map(..) 中得到 NullPointerException 因为
将 f 设置为空。所以我的猜测是我的映射器注册不正确。
除了使用 @RegisterMapper 和 @Mapper(SystemIdMapper.class) 注释外,我还尝试过:
但仍然没有运气。
java - Jdbi - 如何在 Java 中绑定列表参数?
我们有一个由 Jdbi ( ) 执行的 SQL 语句org.skife.jdbi.v2
。对于绑定参数,我们使用 Jdbi 的bind
方法:
但是,我们在列表中遇到问题,目前我们正在使用String.format
它。所以我们的查询看起来像这样:
%s
被替换为String.format
所以我们必须在java代码中生成一个正确的字符串。然后在全部%s
替换之后我们使用jdbi的bind
方法来替换所有其他参数(:parameterOne
或?
)。
有没有办法String.format
用jdbi代替?有一种方法bind(String, Object)
,但默认情况下它不处理列表/数组。我发现这篇文章解释了如何编写我们自己的工厂来绑定自定义对象,但它看起来需要付出很多努力,尤其是对于应该已经支持的东西。
java - 数据库函数的引号内的 JDBI 绑定值
我正在尝试使用 jdbi 对 PostGIS 数据库进行空间查询,我尝试进行的查询是
试图做到这一点
导致此异常
我怀疑问题是试图绑定到引号内的东西,我尝试只使用“POINT(val val)”作为我的绑定值并将其绑定到某个:point,但这也不起作用。你怎么做到这一点?
java - @SingleValueResult 有什么作用?
做什么@SingleValueResult
?它是否强加了约束“单值结果”?
全名:org.skife.jdbi.v2.sqlobject.customizers.SingleValueResult
以下是一些关于它的链接: