Questions tagged «jpa»

Java Persistence API(JPA)是Java规范,用于访问,持久化和管理Java对象/类与关系数据库之间的数据。它是EJB 3.0规范的一部分,并且是对象到关系映射(ORM)的行业标准方法。

6
澄清术语-从数据库获取实体时,“水化” JPA或Hibernate实体是什么意思
在ORM /实体的延迟加载的情况下,我对术语“水合”的理解如下: “水合”描述了填充使用延迟加载获取的实体的某些或全部先前未填充的属性的过程。 例如:Author从数据库中加载类: @Entity class Author { @Id long id; List<Book> books; } 最初,books不填充集合。 据我了解,books从数据库加载集合的过程称为“水化”集合。 这个定义正确吗?我应该在此过程中使用另一个更通用的术语吗?

9
如何使实体为只读?
使用JPA将实体设为只读的正确方法是什么?我希望我的数据库表永远不会以编程方式进行修改。 我想我知道我应该用锁定我的对象LockModeType.READ。从数据库检索后,是否可以使用注释使我的实体直接锁定?还是我必须弄乱并覆盖该特定实体的通用DAO?
76 java  jpa 

9
具有参数属性的Spring数据JPA查询
声明使用输入参数的属性作为查询参数的Spring数据JPA查询的最简单方法是什么? 例如,假设我有一个实体类: public class Person { @Id private long id; @Column private String forename; @Column private String surname; } 和另一类: public class Name { private String forename; private String surname; [constructor and getters] } ...那么我想编写一个Spring数据存储库,如下所示: public interface PersonRepository extends CrudRepository<Person, Long> { @Query("select p from Person p where p.forename = …


4
JPA映射:“ QuerySyntaxException:未映射foobar…”
我一直在研究一个非常简单的JPA示例,并试图将其调整为现有数据库。但是我无法克服这个错误。(下面。)这只是我没看到的一些简单的事情。 org.hibernate.hql.internal.ast.QuerySyntaxException: FooBar is not mapped [SELECT r FROM FooBar r] org.hibernate.hql.internal.ast.util.SessionFactoryHelper.requireClassPersister(SessionFactoryHelper.java:180) org.hibernate.hql.internal.ast.tree.FromElementFactory.addFromElement(FromElementFactory.java:110) org.hibernate.hql.internal.ast.tree.FromClause.addFromElement(FromClause.java:93) 在下面的DocumentManager类(一个简单的servlet,因为这是我的目标)中,有两件事: 插入一行 返回所有行 插入效果很好-一切都很好。问题出在检索上。我尝试了各种Query q = entityManager.createQuery参数值,但没有走运,并且尝试了各种更复杂的类注释(如列类型),但均未成功。 请把我从我自己身上救出来。我敢肯定这有点小。我对JPA的经验不足,无法继续前进。 我的./src/ch/geekomatic/jpa/FooBar.java文件: @Entity @Table( name = "foobar" ) public class FooBar { @Id @GeneratedValue(strategy=GenerationType.IDENTITY) @Column(name="id") private int id; @Column(name="rcpt_who") private String rcpt_who; @Column(name="rcpt_what") private String rcpt_what; @Column(name="rcpt_where") private String …
72 java  mysql  hibernate  jpa 

6
如何使用Spring Data JPA通过Sort和Pageable即时查询数据?
我在我的项目中尝试使用Spring数据JPA。我想知道是否有现成的API通过Sort和来查询数据Pageable。当然,我知道我可以自己编写该方法,我只想知道是否有一个现成的方法。我的DAO扩展JpaRepository,我发现可以调用以下方法: findAll(); findAll(Pageable pageable); findAll(Sort sort); 但是没有这样的方法findAll(Sort sort, Pageable pageable),所以我很好奇。

8
Spring数据jpa-未定义名为'entityManagerFactory'的bean。自动连接的依赖项注入失败
我正在使用spring数据jpa,hibernate,mysql,tomcat7,maven开发应用程序,并且创建错误。我试图弄清楚,但失败了。 错误是在设置构造函数参数时无法解析对bean'entityManagerFactory'的引用;没有定义名为'entityManagerFactory'的bean。自动连接的依赖项注入失败 org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'initDbService': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.wahid.cse.repository.RoleRepository org.wahid.cse.service.InitDbService.roleRepository; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'roleRepository': Cannot create inner bean '(inner bean)#c08f81' of type [org.springframework.orm.jpa.SharedEntityManagerCreator] while setting bean property 'entityManager'; nested …

12
删除无法使用JpaRepository
我有一个Spring 4应用程序,试图从数据库中删除实体的实例。我有以下实体: @Entity public class Token implements Serializable { @Id @SequenceGenerator(name = "seqToken", sequenceName = "SEQ_TOKEN", initialValue = 500, allocationSize = 1) @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "seqToken") @Column(name = "TOKEN_ID", nullable = false, precision = 19, scale = 0) private Long id; @NotNull @Column(name = "VALUE", unique = true) …

1
persistence.xml不同的事务类型属性
在persistence.xml JPA配置文件中,可以有如下一行: <persistence-unit name="com.nz_war_1.0-SNAPSHOTPU" transaction-type="JTA"> 或有时: <persistence-unit name="com.nz_war_1.0-SNAPSHOTPU" transaction-type=”RESOURCE_LOCAL”> 我的问题是: transaction-type="JTA"和之间有什么区别transaction-type=”RESOURCE_LOCAL”? 我还注意到缺少事务类型的一些persistence.xml文件。这是对的吗?

4
注入EntityManagerVs。实体管理器工厂
一个很长的问题,请忍受我。 我们将Spring + JPA用于Web应用程序。我的团队在讨论如何在注入EntityManagerFactory的GenericDAO(基于泛型的东西对AppFuse中提供的线DAO,我们不使用JpaDaosupport某种原因)在注入EntityManager。我们正在使用“应用程序管理的持久性”。 反对注入a的论点EntityManagerFactory是它太重了,因此不是必需的,这EntityManager就是我们需要的。另外,由于Spring会为每个Web请求创建一个DAO的新实例(我对此表示怀疑),因此不会像以前那样存在任何并发问题EntityManager实例中,两个线程共享该线程。 注入EFM的理由是,对于拥有工厂的人来说,EFM的良好实践总会带来好处。 我不确定哪种方法最好,请问有人可以启发我吗?

2
休眠:一对一延迟加载,可选= false
我遇到了一个问题,即一对一的延迟加载在休眠状态下不起作用。我已经解决了它,但是仍然无法正确理解会发生什么。 我的代码(延迟加载在这里不起作用,当我拉人时-地址也被获取): @Entity public class Person{ @Id @SequenceGenerator(name = "person_sequence", sequenceName = "sq_person") @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "person_sequence") @Column(name = "id") private long personID; @OneToOne(mappedBy="person", cascade=CascadeType.ALL, fetch = FetchType.LAZY) private Adress address; //.. getters, setters } @Entity public class Address { @Id @Column(name="id", unique=true, nullable=false) @GeneratedValue(generator="gen") @GenericGenerator(name="gen", strategy="foreign", parameters=@Parameter(name="property", …

3
我必须关闭每个EntityManager吗?
我刚刚开始将自己的持久性框架迁移到JPA。 鉴于持久性框架隐藏了很多问题,我想知道是否不关闭EntityManagers会造成资源泄漏,或者框架是否会为我收集并关闭它们。 我打算在所有地方关闭它们,但是我必须关闭吗? 目前使用TopLink只是因为它可以轻松地与NetBeans一起使用,但是很高兴研究其他JPA提供程序。

12
设置要由数据库生成的JPA时间戳列?
在我的SQL Server 2000数据库中,我有一个DATETIME名称类型lastTouched设置getdate()为默认值/绑定的时间戳记(功能不在数据类型中)。 我正在使用Netbeans 6.5生成的JPA实体类,并将其包含在我的代码中 @Basic(optional = false) @Column(name = "LastTouched") @Temporal(TemporalType.TIMESTAMP) private Date lastTouched; 但是,当我尝试将对象放入数据库时​​, javax.persistence.PersistenceException: org.hibernate.PropertyValueException: not-null property references a null or transient value: com.generic.Stuff.lastTouched 我尝试过将@Basicto设置为(optional = true),但这引发了一个异常,说数据库不允许null该TIMESTAMP列的值,而这是设计不允许的。 ERROR JDBCExceptionReporter - Cannot insert the value NULL into column 'LastTouched', table 'DatabaseName.dbo.Stuff'; column does not allow nulls. INSERT fails. …

1
如何在JPA中定义单向OneToMany关系
我在JPA中使用实体映射存在以下问题。我有两个实体,第一个是Lookup,第二个是Text,它表示实体的翻译。现在,我需要将Lookup绑定到Text,但是我不希望Text引用Lookup。更复杂的是,Text在此关系中不使用其主键,而是在TXTHEAD_CODE列中定义的元代码 。 Lookup.java @Entity @Table(name = "DATREG") public class Lookup implements PersistableEntity { @Id @Column(name = "DATREG_META_CODE") private String metaCode; @OneToMany @JoinTable(name="TXT", joinColumns=@JoinColumn(name="DATREG_META_CODE", referencedColumnName="TXTHEAD_CODE"), inverseJoinColumns=@JoinColumn(name="DATREG_META_CODE")) private List<Text> text; Text.java @Entity @Table(name = "TXT") public class Text { @Id @Column(name = "TXT_ID") private Long id; @Column(name = "TXTHEAD_CODE") private String code; …
70 java  jpa  jpa-2.0 

4
JPA标准教程[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow的主题。 6年前关闭。 改善这个问题 我一直在尝试查找JPA Criteria API教程,但是并没有取得太大的成功。您了解任何初学者吗?我想开始在Java5 / Maven应用中使用它来构建复杂的搜索查询。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.