草庐IT

jpa-annotations

全部标签

java - 了解 EJB3/JPA 容器级事务和隔离级别

考虑一下我正在使用的一些代码的简化View:@Stateless(...)@Remote(...)@TransactionAttribute(TransactionAttributeType.MANDATORY)publicclassFirstEjbType{@EJB(...)privateSecondEjbTypesecondEjb;@EJB(...)privateThirdEjbTypethirdEjb;publicvoiddoSomething(){secondEjb.doSomething();//WRITESSOMETHINGTOTHEDATABASEthirdEjb.doS

java - 使用 JPA 2.1/Hibernate 4 将值列表传递给存储过程

我有一个存储过程,它接受一个字符串列表(并遵循存储过程的限制,accordingtoHibernatedocs):PROCEDUREcount_active_esc(p_countOUTNUMBER,p_codesINstring_list);其中string_list是自定义类型:CREATEORREPLACETYPEstring_listISTABLEOFVARCHAR(100)并希望从JPA实体管理器(anewfeatureinJPA2.1)中调用它。我尝试使用数组:StoredProcedreQueryquery=entityManager.createNamedStoredP

java - Ant 警告 : Implicitly compiled files were not subject to annotation processing

我在运行Ant构建脚本(Ant1.8.2、Java1.6)时收到此警告。[javac]warning:Implicitlycompiledfileswerenotsubjecttoannotationprocessing.[javac]Use-proc:nonetodisableannotationprocessingor-implicittospecifyapolicyforimplicitcompilation.[javac]1warning添加产生:[javac]error:Classnames,'implicit',areonlyacceptedifannotationproc

java - 如何以编程方式验证 JPQL(JPA 查询)

我正在寻找一种以编程方式验证JPA查询的方法。在(Spring)事务中,我有一个要运行的查询列表。这些查询可能包含我想捕获的语法错误,以便交易可以继续。我的第一个想法是使用EntityManager并创建和执行我的查询,以防它们失败,然后我可以简单地捕获异常、记录警告并继续。问题是当出现问题时,事务被标记为只回滚,所以我当前的事务被回滚,这不是我想要的。在伪代码中,它或多或少是这样的:EntityManagerem=...;em.getTransaction().begin();Listqueries=Arrays.asList("selectefromDepartmentd","se

java - Spring Data Rest JPA - 无法延迟加载 OneToMany 双向关系

我有两个实体,Company和Job,具有OneToMany双向关系。我的问题是我不能延迟加载公司的Listjobs.例如当我这样做时:获取/api/companies/1这是JSON响应:{"id":1,"name":"foo",..."_embedded":{"jobs":[{...},...{...}],"employees":[{...},{...}]},"_links":{"self":{"href":"http://localhost:8080/api/companies/1"},"jobs":{"href":"http://localhost:8080/api/compa

java - Hibernate/JPA - 访问 SingularAttribute 参数时出现 NullPointerException

我尝试在Hibernate5.0.7.Final中使用JPA2类型安全条件查询。...criteria.where(builder.equal(root.get(SingularAttribute.attr),value));//whereparametersare//criteria.where(builder.equal(root.get(Person_.name),"Can"));...root.get总是抛出NullPointerException。Person的元模型类Person_由org.hibernate.jpamodelgen.JPAMetaModelEntityPr

java - 如何在附加条件下使用 Spring Data JPA 示例匹配器

我正在尝试使用SpringJPA的示例来进行搜索。有了下面的代码,大部分都符合要求。publicPagefindShops(Shopcondition,Pageablepageable){ExampleMatchermatcher=ExampleMatcher.matching().withStringMatcher(StringMatcher.CONTAINING).withIgnoreCase();returnshopDao.findAll(Example.of(condition,matcher),pageable);}此外,我只需要状态不等于DELETED的SHOP。比如,.w

java - AuditingEntityListener 的 Spring JPA Hibernate CET 时区

我没有成功为我的JPA应用程序设置CET时区,该应用程序使用AuditingEntityListener来增加创建/上次修改日期。我已经尝试过的事情:在我的application.properties(两种组合)中:spring.jpa.properties.hibernate.jdbc.time_zone=UTC+1spring.jpa.properties.hibernate.jdbc.time_zone=CET将时区添加到我的JDBC连接(两种组合)spring.datasource.url=jdbc:mysql://host:3306/db?useUnicode=true&us

java - 嵌入式的 JPA 2 XML 映射,以便它与 Hibernate 元模型生成器一起工作

我想为Hibernate(版本1.1.1-Final)(在Spring应用程序中)使用JPA2元模型生成器。因为我使用一个映射父类(superclass),它是所有实体的基础,并且这个类位于不同的jar中(为了重用)我需要在XML中显式映射这个类(仅用于元模型生成,因为它有效没有任何额外的时间)---可能有人会提示如何解决这个问题,但这不是问题。此映射的父类(superclass)(BusinessEntity)使用嵌入式类(BusinessId)。@SuppressWarnings("serial")@MappedSuperclasspublicabstractclassBusine

java - JPA事务回滚重试和恢复: merging entity with auto-incremented @Version

我想在交易失败后恢复。现在,当然,在任何回滚之后,所有实体都会分离并且实体管理器会关闭。但是,UI仍然保留分离的实体。显然我们不能就这样丢弃用户的更改,所以我们想让他们重试(修复突出显示的验证错误,然后再次单击按钮)。在JavaPersistenceWikiBook之后,OnemethodoferrorhandlingistocallmergeforeachmanagedobjectafterthecommitfailsintoanewEntityManager,thentrytocommitthenewEntityManager.Oneissuemaybethatanyidsthat