Java JPA标准教程

Java JPA标准教程,java,jpa,annotations,jpa-2.0,Java,Jpa,Annotations,Jpa 2.0,我一直试图找到一个JPA标准API教程,但没有太大的成功。你知道有什么适合初学者的吗?我想开始在Java5/Maven应用程序中使用它来构建复杂的搜索查询 专业JPA2:掌握Java持久性API 这是我发现最有用的源代码。这篇文章是关于这个主题的一篇非常好的文章,实际上是迄今为止我在网上找到的最好的一篇,甚至比Java EE 6教程中的更好(其中包含一些错误)。常见查询的示例如下 所有示例均采用以下形式: CriteriaBuilder cb = em.getCriteriaBuilder()

我一直试图找到一个JPA标准API教程,但没有太大的成功。你知道有什么适合初学者的吗?我想开始在Java5/Maven应用程序中使用它来构建复杂的搜索查询

专业JPA2:掌握Java持久性API


这是我发现最有用的源代码。

这篇文章是关于这个主题的一篇非常好的文章,实际上是迄今为止我在网上找到的最好的一篇,甚至比Java EE 6教程中的更好(其中包含一些错误)。

常见查询的示例如下

所有示例均采用以下形式:

CriteriaBuilder cb = em.getCriteriaBuilder();

// Query for a List of objects.
CriteriaQuery cq = cb.createQuery();
Root e = cq.from(Employee.class);
cq.where(cb.greaterThan(e.get("salary"), 100000));
Query query = em.createQuery(cq);
List<Employee> result = query.getResultList();
CriteriaBuilder cb=em.getCriteriaBuilder();
//查询对象列表。
CriteriaQuery cq=cb.createQuery();
根e=cq.from(Employee.class);
cq.where(cb.greaterThan(e.get(“工资”),100000);
Query Query=em.createQuery(cq);
List result=query.getResultList();

如果你还考虑其他技术,你应该认真考虑。与标准相比的主要优势包括代码更短、可读性好以及与常规sql类似的语法

此处的QueryDSL代码示例:

JPAQuery query = new JPAQuery(entityManager);
List<Person> persons = query.from(person)
  .where(
    person.firstName.eq("John")),        
  .list(person);
JPAQuery query=newjpaquery(entityManager);
列表人员=查询。发件人(人员)
.在哪里(
person.firstName.eq(“John”),
.名单(人);

主题外和有用性之间的相关系数==1。0@HDaveOracle与Criteria API的EE7链接已更改为您的第一个示例抛出“无显式选择,且无法确定隐式选择”的exeption
。其中(
此处打开的括号未关闭。