我有这个问题,替换函数无法使用eclipselink版本2.5.2。
这是我的代码:
String sSql = " SELECT e FROM br.com.megasoft.protocolo.entity.Assunto e WHERE ( REPLACE(REPLACE(REPLACE( UPPER(e.titulo), '/', ''), '-', ''), '.', '') LIKE UPPER('A') )";
TypedQuery<?>
我正在使用spring-data-jpa+hibernate.1.我遇到以下情况.
Caused by: java.lang.IllegalArgumentException: Parameter with that position [1] did not exist
at org.hibernate.jpa.spi.BaseQueryImpl.findParameterRegistration(BaseQueryImpl.java:518) ~[BaseQueryImpl.class:4.3.7.Final]
at org.hibernate.jpa.spi.BaseQue
我有这些类,字段总是懒散地加载。
public class Book {
@ManyToOne(fetch = FetchType.LAZY)
private Publication publication;
@OneToMany(fetch = FetchType.LAZY)
private List<Author> authors;
@OneToMany(fetch = FetchType.LAZY)
private List<Genre> genres;
}
public class Publica
在我的JEE6 6-应用程序中,我正在执行一些JPA2.0查询,其中我使用带有参数的命名查询。我当前的查询是一个“全部查找”的查询,只有一个参数。
@NamedQuery(name = "UserPE.byAny", query = "SELECT b FROM UserPE b WHERE " +
"b.email LIKE CONCAT('%', :PARAM, '%') OR " +
"b.name LIKE CONCAT('%', :P
到目前为止,我的理解是JPA是一个规范,Hibernate是基于该规范的ORM工具,我们可以有不同的JPA实现。但是我不能理解为什么JPA2不支持java.time.Instant而Hibernate 5.2x支持它。 我读过这个问题why-jpa-does-not-support-java-time-instant,但它没有正确的答案,也没有讨论hibernate如何能够提供对Instant it a JPA特定实现的支持。
我正在阅读EJB3 in Action一书,我有以下问题:
您使用@Entity等编写和注释的POJO也是EJB实体类型吗?
我不明白JPA和EJB有什么关系。JPA现在不是自己的规范了吗?这些实体也包含在自己的持久性容器中。他们谈论EJB3、Java持久性API等,但我不理解实体与EJB有什么关系。
我们有一个存储库,我们希望在其中使用带有分页的动态投影:
@Repository
public interface PersonRepository extends JpaRepository<Person, Long> {
@Query("select p from Person p")
<T> Page<T> dynamicInterfaceProjection(final Class<T> projectionClass, final Pageable pageable);
}
但是,当我们调用它时,我们会得
当我尝试在Websphere application Server 9.0上部署我的应用程序时,我得到了这个错误
An error occurred in the org.hibernate.jpa.HibernatePersistenceProvider persistence provider when it attempted to create the container entity manager factory for the ApplicationEntityManager persistence unit. The following error occurred: java
我想知道是否有一种方法可以编写类似下面的JPQL语句
select o from entity1 o where (o.field1, o.field2) IN (select value1, value2 from ...)
类似的sql查询适用于Oracle 10g。然而,在eclipselink中,我得到了这个错误:
syntax error at [,].
Internal Exception: MismatchedTokenException(81!=84)
at org.eclipse.persistence.exceptions.JPQLException.syntaxError
我对Spring Data-JPA和JPA之间的区别感到有点困惑。我知道JPA是一种使用流行的ORM技术将Java对象持久化到关系数据库的规范。
换句话说,JPA提供接口和其他ORM技术,实现那些称为JPA提供者的接口,例如Hibernate。
那么,什么是Spring Data JPA呢?
Spring Data JPA是否在JPA之上添加了更多的功能(接口),并且它仍然只是指定的,还是它也是一个JPA提供者?
我看到Spring Data JPA可以绕过存储库(DAO层:如果我没记错的话)。所以,我的意思是,使用'Spring Data JPA + Hibernate‘和只使用
我正在从Hibernate移植。JPQL语句中的SIZE函数有什么问题(假设映射是正确的):
SELECT NEW de.poyry.pqgenerator.view.PqListItem(
pq.id,
pq.name,
pq.submissionDate,
pe.firstName,
pe.lastName,
SIZE(pa))
FROM Prequalification pq
JOIN pq.user us
JOIN us.person pe
LEFT JOIN pq.partnerships pa
LEFT JOIN pa.company co
GROUP BY p
我们最近切换到Java8来使用java.time API (LocalDate,LocalDateTime,.)。因此,我们将Hibernate依赖项更新为4.3.10版本。我们编写了一些AttributeConverters来帮助Hibernate将新的Java8类映射到数据库。
例如:
@Converter(autoApply = true)
public class LocalDateConverter implements AttributeConverter<LocalDate, Date>
要使用javax.persistence.Converter和javax.pe