问题标签 [jooq]
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.
sql - 代码生成器将 NUMERIC(20,0) 解释为 BIGDECIMAL,而应将其解释为 Long
我有一个字段名称为“BID”的表,其数据类型设置为 NUMERIC(20,0)。现在我知道它永远不会是十进制/浮点值,但始终是整数/长整数,即自然数。
代码生成器有没有办法使生成的模型类中的变量为 Long,而不是它当前生成的 java.math.BigDecimal。可以在jooq.properties中设置吗??
java - 比较 Querydsl、jOOQ、JEQUEL、activejdbc、iciql 和其他查询 DSL
有人可以指出一些关于可用于 Java 的不同 Query DSL 库之间性能比较的资源,例如:Querydsl、jOOQ、JEQUEL、activejdbc、iciql等...
背景:我正在使用 Spring JDBC 模板,但这仍然需要以纯字符串格式编写查询。虽然我在编写直接查询时没有问题,但我担心直接依赖于数据库表名。我不想使用任何 ORM 框架,如 Hibernate 或 JPA/EclipseLink。我需要尽可能高的原始性能(IMO,它们适用于更多以 CRUD 为中心的应用程序)。我可以为这些 DSL 提供一点点开销(我相信,它主要是 StringBuilder/String 连接!)
我考虑过在某些 xml 中使用外部化的命名查询。但只是试图评估不同 Query DSL 库提供的价值。
编辑:更多关于我的要求: 我想知道在使用他们的 API 方法构建一个中等复杂的查询时它们之间的性能比较。我只需要使用这些查询 DSL 库中的任何一个生成查询字符串,并将其传递给 Spring JDBC 模板。所以,我想知道添加这个中间步骤是否会导致相当大的性能损失,我想使用命名查询或构建我自己的库,它只使用 StingBuilder 或类似方法
更新我对 jOOQ、iciql、QueryDSL 的体验:
尽管我在原来的帖子中没有提到这一点,但我也热衷于易用性和我需要在我的实体类中拥有的开销(比如是否需要任何额外的注释或实现)。
约克:
- 需要将实体属性更改为库特定的方式
- 可以返回 SQL 查询字符串
爱奇艺:
- 实体可以在没有或很少更改的情况下进行映射(可以使用总共 3 种方式进行映射)
- 但它仅限于选择查询(对于更新/删除/...需要再次更改实体)
查询DSL:
- 将实体与表绑定的多种方法(除了库特定的方法,支持使用 JPA 注释)。但我们至少需要修改实体
- 没有简单/直接的方法来获取查询字符串
(所有观察结果我对这些知之甚少;如果其中任何一个不正确,请更正)
综上所述,我坚持编写命名查询:(但正如 Lukas Eder 的回答似乎解释了我最初关注的帖子(性能),我接受了他的。
java - jOOQ 插入查询并返回生成的键
我将 jOOQ 安装到 Eclipse 中,为我的 mySQL 生成了类,但我仍然无法编写一些基本查询。
我试图通过返回生成的键来组合插入查询,但编译器抛出错误
表:tblCategory 列:category_id、parent_id、name、rem、uipos
还尝试了其他不同的方法如何正确地做到这一点?
谢谢魅力
mysql - 如何在 jOOQ 的同一张表上编写 LEFT OUTER JOIN?
如何使用 jOOQ 编写以下 SQL?
数据库是 mySQL
sql - jOOQ 复杂更新 - 如何锁定表?
这是嵌套集模型的“添加节点”SQL查询
以及映射到 jOOQ
我应该如何锁定桌子?我是不是该?
谢谢
java - 我们如何分析 JOOQ 语句的速度
我已经使用 Union Platform 作为基于 java 的游戏服务器实现了 JOOQ,并使用 Union Platform 的 Orbiter Micro(Union JS Client)在浏览器上运行它。
但是,在游戏中只有 30-40 名活跃玩家的情况下,联盟平台在速度方面落后。
对于每个游戏实例(即每个房间),我配置了一个执行所有查询的工厂连接。它的作用是,
对于每个玩家的回合,
- 播放器可以输入一个整数,在一系列(4 个查询)条件检查之后,它通过 JOOQ 插入/更新数据库
- 然后为了取回整数的状态,它再次执行 3 个查询,这些查询有效地转换为 3 个链接哈希图以更新游戏状态。
现在,响应需要很长时间,以至于玩家看到了性能问题。而Union Platform实际上声称可以轻松处理1000多名活跃玩家。所以这实际上意味着我的 JOOQ 查询中有一些错误(我确实使用了很多 LEFT OUTER JOIN)。
因此,任何提高吞吐量和分析每个查询的建议都非常受欢迎。
hibernate - 用于仅插入/仅查询应用程序的 ORM 框架
我已经使用 Hibernate 多年,从来没有遇到过问题,但我刚刚意识到我的大部分工作都涉及 CRUD 方法,我需要数据来保持持久化和随意修改。
这样做的问题是,有些人想要制作 2 个单独的应用程序,一个用于批量插入,另一个用于对插入的数据执行搜索。
由于在这种情况下持久化有点没用,团队不想使用 Hibernate,而是在插入应用程序上使用原始查询,也许在查询应用程序上使用类似jOOQ的东西。
这是正确的电话吗?或者我怎么能说服他们使用 Hibernate,而不是“它是我最喜欢的 orm 框架”?或者是否还有其他没有考虑到的解决方案?
java - JOOQ insert into select syntax with specified columns
Can JOOQ do 'insert into select' syntax for specified columns? I run several different tries..
The Tables:
table1 (Expected insert)
table2
table3
JOOQ code:
JOOQ show error message:
Anyone know what problem I make and how I can fix my JOOQ code. thanks, Pay.
Reference: Example: INSERT SELECT syntax support
java - jooq 返回值不正确的查询
我想使用以下基于 jooq 的代码插入数据库表数据以生成查询:
问题是当我使用此代码打印查询时
我得到的是带有问号而不是值的查询。
当我分别打印变量的值时,它们都是正确的。即使我在 .set() getSQL() 中手动插入字符串值也会返回问号。
java - 如何在 M2E 中使用 Jooq 源代码生成?
我正在尝试将 Jooq 源代码生成配置为在 Eclipse 中与 Maven 一起使用(我使用 M2E),但是在遵循 Jooq 手册时遇到了问题。
这是我的 pom.xml 的相关部分:https ://gist.github.com/cfd8a0556dd441ab43ff
错误是:生命周期配置未涵盖插件执行:org.jooq:jooq-codegen-maven:2.0.5:generate (execution: default, phase: generate-sources)
它出现在上面的要点片段的第 12 行。我究竟做错了什么?