草庐IT

java - jpa 2 hibernate 限制(最大结果)到 CriteriaQuery

也许这是一个愚蠢的问题,但我在文档中找不到答案:如何使用JPA2为CriteriaQuery设置限制?谢谢 最佳答案 CriteriaQuery不是可执行的查询。您需要先使用EntityManager.createQuery(criteriaQuery)创建一个TypedQuery。然后您可以设置它的最大结果并执行它。 关于java-jpa2hibernate限制(最大结果)到CriteriaQuery,我们在StackOverflow上找到一个类似的问题:

java - 为什么 JPA 对于 @ManyToOne 关系默认使用 FetchType EAGER

我开始注意到@ManyToOne映射的默认FetchType在JPA和Hibernate中是EAGER,而对于@OneToMany映射,默认FetchType为LAZY。这背后的具体原因是什么? 最佳答案 根据JPA2.0规范c,默认值如下:OneToMany:LAZYManyToOne:EAGERManyToMany:LAZYOneToOne:EAGER在hibernate中,一切都是懒惰的来自Hibernate文档,Bydefault,Hibernateuseslazyselectfetchingforcollectionsan

java - 使用 JPA merge() 时出现 OptimisticLockException

我有一个休息应用程序,其中一个资源可以更新。以下是负责完成此任务的两种方法:updateWithRelatedEntities(String,Store):接收id和通过反序列化PUT请求实体构建的新对象Store,在新对象上设置版本(用于乐观锁定)并调用更新在交易中。publicStoreupdateWithRelatedEntities(Stringid,StorenewStore){StoreexistingStore=this.get(id);newStore.setVersion(existingStore.getVersion());em.getTransaction().

java - 如何从实体管理器获取 ResultSetMetaData?

有没有办法获取在JPA中的实体管理器上执行nativeQuery返回的结果的MetaData? 最佳答案 据我所知,没有办法获取结果集元数据,因为实际上没有办法获取结果集。但是,反过来:你想要元数据做什么?来自结果集元数据的大部分信息您已经必须能够注释您的实体类。来自传统SQL/JDBC的结果集和您从EntityManager获得的列表在概念上是不同的,即使它们可以表达相同的语义。 关于java-如何从实体管理器获取ResultSetMetaData?,我们在StackOverflow上

java - 如何使用 JPA/Hibernate 选择 DDL 主键约束名称

存在一个专有的hibernate注释来指定在DDL生成时使用的外键约束名称:org.hibernate.annotations.ForeignKey.是否还有一种方法可以指定主键约束名称? 最佳答案 标准JPA不可能,Hibernate也不支持主键约束。关于此功能请求实际上有一个非常古老的问题(HB-1245),但看起来它并没有引起太多关注。 关于java-如何使用JPA/Hibernate选择DDL主键约束名称,我们在StackOverflow上找到一个类似的问题:

java - Android 中的 JPA 注解

我们有一个项目,在服务器端使用JPA/Hibernate,映射的实体类在他们自己的Library-Project中,并使用Annotations映射到数据库。我想在Android项目中使用这些类-有什么方法可以忽略Android中的注释,将这些类用作标准POJO? 最佳答案 只要您的类路径中有带有JPA注释类的jar,编译器就不会在意。如果不存在运行时检测系统(例如Hibernate),则注释只是存在但未使用的额外信息。唯一的问题是确保在您的分发中包含JPAjar。 关于java-And

java - JPA 和 JDO 规范有什么区别?

我一直在使用HibernateORM,它是JPA的一个实现。管理关系数据的规范。我也听说过JDO规范应该做同样的事情(管理关系数据)。两者之间的根本区别是什么?最受赞赏的任何代码示例。JDO如何与其他Java技术堆栈集成,例如EJB3? 最佳答案 试试这些JDO-JPAFAQ,JDOorJPA,JDO.v.JPA,JDO.v.JPA-API,JDO.v.JPA-ORMJDO早在JPA之前就存在了,而且范围更广。JPA仅适用于RDBMS,并且(即使在JPA2中)也不提供JDO所提供的完整支持。该论坛中的链接和其他帖子应该提供充分的阅读

java - 可嵌入类中的外键映射

我正在为JPA使用eclipselink。我有一个实体,它有一个由两个字段组成的复合键。以下是我的可嵌入主键类的字段(成员)。@EmbeddablepublicclassLeavePK{@ManyToOne(optional=false)@JoinColumn(name="staffId",nullable=false)privateStaffstaff;@Temporal(TemporalType.TIMESTAMP)privateCalendardate;//settersandgetters}我的实体将保存与员工相关的休假数据,因此我试图结合员工对象和休假日期来生成复合键。除了我

java - @Inject 和@PersistenceContext 有什么区别?

在一个使用JPA的项目中,我常用@InjectEntityManagerem;为了获得这样一个对象。我在网上看到许多代码片段使用:@PersistenceContextEntityManagerem;这些选项有什么区别?我的代码在JBossEAP6.1和Hibernate上运行。 最佳答案 @PersistenceContext是一个特定的注解,声明对容器管理的实体管理器的依赖。它允许您指定更多参数,例如持久性类型。当您想要为有状态sessionbean的整个生命周期维护持久性上下文时,将持久性类型设置为EXTENDED很重要。@P

java - @Entity 无法识别@MappedSuperclass 中的@Id

我正在尝试为一组实体创建一个基类以减少编码工作和重复。我的想法是基类有共同的元数据字段,子类处理它们的独特属性。我的基类:@MappedSuperclasspublicabstractclassFinanceEntityBean{protectedLongid;@Versionprivatelongversion;@Id@GeneratedValue(strategy=GenerationType.IDENTITY)publicLonggetId(){returnid;}publicvoidsetId(finalLongid){this.id=id;}}第一个实体:@Entity@Ta