问题标签 [querydsl]
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.
ibatis - 是否有任何类似于 MyBatis 中的 Criteria API 的功能,或者任何像 QueryDSL 这样的包装器来提供该功能?
在JPA/Hibernate
中,我们可以编写类型安全的查询并一次一步累积我们的查询谓词。我相信在 中没有等价物MyBatis
,但是否有任何抽象框架(如QueryDSL
)提供上面的层MyBatis
,使我们能够编写类似条件的查询。我想要条件 API 的基本原因是我需要构造一个查询,每个查询的谓词都来自一个单独的逻辑。
java - 如何告诉 querydsl-maven-plugin 使用 Long 而不是 BigDecimal 生成 NumberPath?
我正在使用querydsl-maven-plugin
以从 Oracle 11g 数据库中导出 Q 路径。我面临的问题是 OracleNUMBER
字段被映射到 NumberPath<java.math.BigDecimal>
而不是NumberPath<Long>
有什么方法可以指示在代码生成过程中进行querydsl-maven-plugin
翻译吗?BigDecimal
Long
我现在采用的方法是使用插件生成代码,然后手动转换类型。
任何提示将不胜感激。
spring - hibernate @ManyToOne 没有表关系
目前使用:
- 休眠 4.0.1.Final
- Spring-data-jpa:1.0.3.RELEASE
- 查询DSL:2.3.0
- MySQL 5.x
我有一个有趣的问题,我还没有找到答案或线索。我有两个没有外键或其他关系的表。但是为了尝试解决这个问题,我添加了一个。我希望我的用户实体持有它的用户角色。这种模式在整个数据库中重复出现,但这是最容易描述的。
这是我的表:
用户
用户角色
这是我的课程: User.java
用户角色.java
因此,您可以看到我试图将 UserRole.userRoleId 与用户相关联的位置。我想也许 Hibernate 会在用户更新时构建映射并检索/关联 UserRole。
我已经回去并编辑了这篇文章以在表之间使用外键,但是在应用服务器启动时我得到了这个:
我查找了该错误,该错误似乎与 JPA 和瞬态变量有关,但此处并非如此。
java - 使用 QueryDSL JPA 在 MySQL 中查找重复行
我想在 QueryDSL JPA 中执行这个 SQL 请求
为了在表中找到重复的行,我应该执行这个请求。但是使用 QueryDSL,我找不到写这个的方法。
似乎 QueryDSL 不允许在 Inner Join 中使用 subQuery :s
有什么建议吗?
感谢和问候,
spring - Spring 数据规范或 QueryDSL
在其中一个项目中,我们使用的是 Spring Data。现在查询变得越来越复杂,我们考虑添加 Spring Data Specification 或 QueryDSL。
但是,不确定前进的最佳方式。我认为它们都有相同的目的。有没有比其他更推荐的?
谢谢
jpa-2.0 - 在 JPA 中,为什么 CriteriaBuilder 让我在不相关的类型之间构建不健全的谓词?
我很好奇为什么使用CriteriaBuilder
JPA 2 类可以创建这样的查询。假设我有一个名为as 属性User
的持久类。为什么我可以写这个?String
name
首先,在标记 1:为什么我必须User.class
再次指出?我的 CriteriaQuery 不应该知道我对用户感兴趣吗?可能在这里注入另一个类不会破坏类型安全吗?
其次,在标记 2:该name
属性是 a String
。为什么我可以编译这样的废话,将 aString
与 double 进行比较?换句话说,为什么被调用equal
方法的签名是这样的:
而不是如下可能更安全的版本?
像Querydsl这样的其他查询框架会为这个问题提供更好的解决方案吗?
java - QueryDSL & Hibernate-Search with Lucene Analyzers
我将 Hibernate-Search 配置为在索引我的实体时使用我的自定义分析器。但是,当我尝试使用 QueryDSL 的 Hibernate-Search 集成进行搜索时,它不会找到实体,但如果我使用直接的 hibernate-search 它会找到一些东西。
我索引了一个标题为“the quick brown fox jumped over the lazy dog”的实体。
这些工作……</p>
这不……</p>
但是搜索一下它是如何存储在 Lucene 中的(SnowballPorter 的可能结果),然后它就可以工作了……</p>
因此,似乎在使用 QueryDSL 时,分析器在执行查询之前并未运行。谁能确认这是问题所在,无论如何在 QueryDSL 运行查询之前让它们自动运行?
spring-data - 如何将 spring 数据排序转换为 querydsl OrderSpecifier?
这基本上与此相反: How to do a paged QueryDSL query with Spring JPA?
这是针对我无法使用任何 findAll() 方法的自定义查询。
编辑:
发错链接了。现在更正了。
java - Querydsl需要查询整数列小于值的位置
我在编写将在整数列上执行简单的小于或等于比较的 JPAQuery 时遇到问题。我有 QCommand 生成的 querydsl 对象,我试图将其与 JPAquery 一起使用来执行这个非常简单的查询。我要执行的查询使用 SQL 如下所示:
生成的 QCommand 对象将 retryCount 参数定义为:
我注意到因为它是一个 SimplePath,所以当我尝试编写 JPAQuery 时,retryCount 变量没有像 loe 或 goe 这样的比较运算符。该列/变量只允许我执行 isNull、isNotNull、eq 和其他非常简单的运算符,但不能执行比较运算符。这看起来像下面,但是,显然没有执行我想要的比较,但它可以正常工作:
在环顾四周时,我看到有一种方法可以创建 NumberPath,这似乎是我想要的,但是,当我尝试下面的代码时,我得到一个异常“java.lang.IllegalArgumentException:未声明的路径'retryCount'。添加这个路径作为查询的来源,以便能够引用它。”
那么,我怎样才能将这条路径“添加”到源中。我环顾四周,找不到这样做的示例,也找不到应该如何完成的解释。javadocs 在这种情况下不是很有帮助。我一直在很好地使用 querydsl,但这是第一个障碍,我很难编写一个最简单的查询。任何帮助或建议将不胜感激。
eclipse - QueryDsl Maven 插件缺少一个类
我正在尝试配置我的 spring 项目以使用查询 dsl。maven 版本的插件有问题,我收到以下消息:
有任何想法吗?