草庐IT

accessing-data-jpa

全部标签

java - 带有数字和下一个、上一个的 Jpa 分页

我很抱歉问这个问题,如果有人已经问过这个问题,并且问一个可能很愚蠢的问题,但我是新手,你是专家,我很乐意从你的专家建议和经验中学习。我想为每页显示200条记录的应用程序添加分页。页面底部应该有数字。如果有1050个,第一页显示100,页面底部显示数字1,2,3,4,5&6。完成此操作的一般逻辑是什么?我知道数据库每次都必须选择200,我必须跟踪第一条记录。有没有办法知道总共将返回多少条记录,以便我可以知道要在页面底部显示多少个数字?是否需要选择count()语句或其他语句?对于1050条记录,将显示数字1、2、3、4、5和6,单击每个记录都需要调用服务器。有没有办法知道下次调用服务器时

java - JPA : how to map SQL Server uniqueidentifier type

我已经继承了一个试图通过JPA映射的SQLServer数据库。许多表都有一个uniqueidentifier列。我正在尝试像这样映射它们:@Id@GenericGenerator(name="generator",strategy="guid",parameters={})@GeneratedValue(generator="generator")@Column(name="APPLICATION_ID")privateStringid;Hibernate提示:Found:uniqueidentifier,expected:varchar(255) 最佳答案

java - 如何将多个日期间隔搜索与 Spring Data JPA 的 CrudRepository 结合起来?

spring-data提供了一种通过定义方法名来生成SQL搜索的方式。以下工作正常:@EntitypublicclassBook{Datefrom,to;}//CrudRepositoryfindByFromDateBetween(Datedeparture,Datearrival);但是为什么下面的方法不起作用呢?findByFromDateBetweenAndToDateBetween(Datedeparture,Datearrival);要连接两个日期搜索,我必须重复日期:findByFromDateBetweenAndToDateBetween(Datedeparture,Da

java - JPA namedQuery 中的 COALESCE

我有以下命名查询selectnewtest.entity.Emp(COALESCE(k.projectId,'N')asprojectId,k.projectName)fromEmpoinnerjoino.projectsk但是我得到了错误expectingRIGHT_ROUND_BRACKET,found'('如何处理namedQuery中的COALESCE?在JPA中还有其他方法可以处理空值吗? 最佳答案 合并是supportedbyJPA2.0API.new构造是Hibernate专有的,不一定在所有JPA实现中都受支持。首先

java - Spring Data JPA 更新方法

我仍在寻找Spring的DataJPA中的更新方法来更新关系数据库中持久存在的给定Object。我只找到了解决方案,在这些解决方案中,我被迫通过@Query注释(与@Modifying相比)指定某种更新查询,例如:@Modifying@Query("UPDATEUseruSETu.firstname=?1,u.lastname=?2WHEREu.id=?3")publicvoidupdate(Stringfirstname,Stringlastname,intid);为了构建查询,我还必须传递单个参数而不是整个对象。但这正是我想要做的(传递整个对象)。所以,我要寻找的是这样一种方法:p

java - 在实体上使用 lomboks @Data 和 @Builder

我正在使用以下内容:@Entity@Data@Builder@NoArgsConstructor(force=true)publicclassUser{privateStringid;privateStringfirstName;privateStringlastName;}我想要实现的目标:为了使用JPA,我需要一个带有noArgConstructor、getters/setters和equals/hashCode/toString的POJO。对于实例创建(例如在测试中)我想使用User.builder().build();问题:它无法编译,NoArgConstructor与Requ

java - 为什么 Spring Data 存储库方法参数名称在 Java 8 上也不可用?

我很难让spring-boot1.4版本的Pivotal示例项目通过测试fromtheirexamples它显示spring-data-jpa在其JPQL中使用unannotated命名参数例如fromexample.springdata.jpa.simple.SimpleUserRepository@Query("selectufromUseruwhereu.firstname=:firstname")ListfindByFirstname(Stringfirstname);注意它没有使用@Param注解这不能在我的机器上运行。我在这里详细了解了异常,从标题中可以不言自明。Namef

java - 如何将 Java 9 '--permit-illegal-access' 标志传递给 Webstart 应用程序?

我通过传递--permit-illegal-access使我的应用程序在JREbuild9-ea+163上运行标记给虚拟机。现在我想用JavaWebstart启动应用程序。第一次尝试javaws-J--permit-illegal-access不起作用。我得到相同的InaccessibleObjectException与modulejava.basedoesnot"opensjava.util"tounnamedmodule就像没有旗帜一样。添加对JNLP没有帮助。Webstart是否支持--permit-illegal-access旗帜?我可以在JNLP文件中进一步指定标志吗?顺便说

java - 如何使用 Gradle 5.x 生成 JPA 元模型

我目前正在尝试从gradle4.8.1升级到5.1.1,但未能为我们的代码生成hibernate元模型。问题是gradle5忽略了通过编译类路径传递的注释处理器,但我发现的所有插件都在使用它(即“-proc:only”)。我试图明确指定注释处理器,正如gradle(https://docs.gradle.org/4.6/release-notes.html#convenient-declaration-of-annotation-processor-dependencies)所指出的那样annotationProcessor'org.hibernate:hibernate-jpamod

java - JPA : Many to Many query help needed

我有四个实体参与了一个查询,但我遇到了一些麻烦。关系如下:Exchange----*Contract*----*Combo----*Trade和(简化)实体如下:@EntitypublicclassExchangeimplementsSerializable{@Id(name="EXCHANGE_ID")privatelongexchangeId;@ColumnprivateStringexchangeShortName;}@EntitypublicclassContractimplementsSerializable{@IdprivatelongcontractId;@Columnp