草庐IT

java - JPA @ManyToMany - 无法删除或更新父行 : a foreign key constraint fails

我有实体:@EntitypublicclassUser{@ManyToMany(cascade=CascadeType.PERSIST,fetch=FetchType.EAGER)privateListroles=newArrayList();@EntitypublicclassRole{@ManyToMany(cascade=CascadeType.PERSIST,fetch=FetchType.EAGER)privateSetpermissions=newHashSet();执行删除/移除时抛出以下异常:Causedby:com.mysql.jdbc.exceptions.MySQ

java - 为什么 Hibernate 内联传递给 JPA Criteria Query 的 Integer 参数列表?

我正在使用JPACriteriaAPI构建查询。当我使用javax.persistence.criteria.Path#in(Collection)创建两个限制谓词时方法生成的SQL查询与我预期的略有不同。在int上构建的第一个谓词属性生成的SQL内联参数集合的所有元素:in(10,20,30).在String上构建的第二个谓词属性生成的参数化SQL:in(?,?,?).让我展示一下:实体:@EntitypublicclassA{@IdprivateIntegerid;privateintintAttr;privateStringstringAttr;//getter/setters}

java - Jersey API + JPA/Hibernate Criteria 延迟加载不起作用

这是我拥有的一个简化的POJO:@Entity@Table(name="Patient")@Inheritance(strategy=InheritanceType.SINGLE_TABLE)@DiscriminatorColumn(name="Discriminator",discriminatorType=DiscriminatorType.STRING)@DiscriminatorValue(value="P")@Cache(usage=CacheConcurrencyStrategy.READ_WRITE)publicclassPatientimplementsSerializ

java - 如何在 Netbeans 中使用 Eclipse-Link JPA 应用静态编织 Ant 任务?

我正在使用Netbeans7.1.1和Glassfish3.1.2服务器。作为JPA提供者,我决定使用Netbeans附带的eclipse-link2.3.0。因为我想使用惰性抓取并且我的项目包含大约45个JPA实体类,它们之间确实有很多关系,所以我决定使用静态编织。此外,@Entity类位于单独的类库项目中,而persistence.xml位于EJB项目中。我已经按照此处的说明进行操作:http://wiki.eclipse.org/EclipseLink/UserGuide/JPA/Advanced_JPA_Development/Performance/Weaving/Stati

java - 动态设置 JPA 持久性属性

假设我有以下persistence.xml,连接url、用户和密码都是硬编码的。以下是针对Hibernate3.2的。对于Hibernate3.5++,我们必须将“hibernate.connection”更改为“javax.persistence”。但是让我问这个问题,不管文字是“hibernate.connection”还是“javax.persistence”。org.hibernate.ejb.HibernatePersistencefalse但是,我们需要动态设置url、用户和密码。有一个建议的身份验证服务器,它提供url、用户和密码。这样我们就不需要单独配置无数使用某种形式

java - 在 JPA/Hibernate 中建模二对多关系

我有以下实体关系问题。一个“游戏”必须有两个(而且只有两个)“团队”对象。一个“团队”可以有多个“游戏”据我所知,这是一种二对多关系。但是......我不知道如何在JPA中对此建模。例如,我正打算做这样的事情......@EntitypublicclassTeamextendsBaseObject{privateLongid;privateSetgames;@Id@GeneratedValue(strategy=GenerationType.AUTO)publicLonggetId(){returnid;}publicvoidsetId(Longid){this.id=id;}@One

java - 如何在 Oracle 10gR2 和 JPA 中做到不区分大小写和不区分重音?

在J2EE项目中,使用JPA,如何强制类似查询不区分大小写和重音?我知道更改session变量NLS_COMP和NLS_SORT,但我想知道是否有另一个技巧可以在不更改session变量的情况下在查询本身中执行此操作 最佳答案 (...)usingJPA,howcanIforcealikequerytobecaseinsensitiveandaccentinsensitive?我的答案是面向JPQL的。对于前一部分,你可以这样做:wherelower(name)like'johny%';对于后面的部分,我不知道执行此操作的标准JPQ

java - JPA 标准 API : How to select property in nested collection

我有一个类Customer和CustomerDependant实体。Customer与其家属有多对多的双向关系。我需要查找按姓名和相关姓名过滤的客户。它在JPQL中做了类似这样的事情:selectcjoinfetchc.dependantsdfromCustomercwherec.namelike'foo'andd.namelike'foo'我如何使用JPA标准查询做同样的事情? 最佳答案 摘自JPA规范第6.5.4节CriteriaQueryq=cb.createQuery(Department.class);Rootd=q.fr

java - JPA:在空的多边上将获取结果加入到 NULL

我在User和GameMap之间有一个一对多的关系。一个用户可以拥有多张map。用户类://LAZYLOADED@OneToMany(cascade=CascadeType.ALL,mappedBy="creater")privatefinalListmaps=newArrayList();但是,有时我需要预先加载map。为了避免在关闭session后出现LazyInitializationException,我有两种检索用户的变体。用户存储库:publicinterfaceUserRepositoryextendsJpaRepository{OptionalfindById(Long

java - 如何使用 JPA 在 Hibernate 4 中启用 Multi-Tenancy ?

在我看来好像supportformultitenancyhasbeenaddedtohibernate近六个月了,updatedatleastoncesince.在JPA之外获取Multi-Tenancysession看起来相当简单:Sessionsession=sessionFactory.withOptions().tenantIdentifier("jboss").openSession();但是如何在通过JPA使用hibernate的应用程序中启用它呢?(如果可能的话)。提前致谢。 最佳答案 您可以通过persistence