Java Spring DataJPA自定义查询问题:
我使用JPA(hibernate+postgresql)和MongoDB进行了设置:Java Spring DataJPA自定义查询问题:,java,jpa,spring-data,Java,Jpa,Spring Data,我使用JPA(hibernate+postgresql)和MongoDB进行了设置: <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-mongodb</artifactId> <version>1.0.3.RELEASE</version>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb</artifactId>
<version>1.0.3.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-jpa</artifactId>
<version>1.1.0.RELEASE</version>
</dependency>
org.springframework.data
Hope是你们中的一个创建自定义查询的人(比如findBySomeProperty(…)
谢谢Spring数据API在1.0和1.1版本之间发生了更改,这就是出现此错误的原因。对两个依赖项使用相同的版本,它应该可以工作。我找到了答案:
<spring.version>3.1.2.RELEASE</spring.version>
<spring-data.jpa.version>1.2.0.BUILD-SNAPSHOT</spring-data.jpa.version>
<spring-data.mongodb.version>1.1.0.BUILD-SNAPSHOT</spring-data.mongodb.version>
3.1.2.1版本
1.2.0.1构建快照
1.1.0.1构建快照
我在git存储库上做了一些maven测试,将版本组合在一起我在尝试使用Spring数据JPA+Hibernate+Spring Framework 4.0时遇到了同样的问题。问题是Spring数据项目的速度跟不上Spring框架项目
我使用正确的JAR版本组合并排除任何其他Spring项目来解决这个问题,这样就可以基于“Spring Data”pom.xml文件正确自动地下载这些依赖的JAR。在此检查所有Spring数据依赖项:
我将maven pom.xml文件更改为:
<properties>
<!-- Generic properties -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<!-- Spring -->
<spring-framework.version>3.2.9.RELEASE</spring-framework.version>
<spring-data.version>1.6.0.RELEASE</spring-data.version>
<!-- Hibernate / JPA -->
<hibernate.version>3.6.10.Final</hibernate.version>
<!-- Test -->
<junit.version>4.11</junit.version>
</properties>
<dependencies>
<!-- Spring framework -->
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-jpa</artifactId>
<version>${spring-data.version}</version>
</dependency>
<!-- Hibernate -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>${hibernate.version}</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>${hibernate.version}</version>
</dependency>
<dependency>
<groupId>org.hibernate.javax.persistence</groupId>
<artifactId>hibernate-jpa-2.0-api</artifactId>
<version>${hibernate-jpa.version}</version>
</dependency>
....
</dependencies>
UTF-8
UTF-8
3.2.9.1发布
1.6.0.1发布
3.6.10.最终版本
4.11
org.springframework.data
spring数据jpa
${spring data.version}
org.hibernate
冬眠核心
${hibernate.version}
org.hibernate
休眠实体管理器
${hibernate.version}
org.hibernate.javax.persistence
hibernate-jpa-2.0-api
${hibernate jpa.version}
....
我也有同样的问题
org.springframework.data.repository.query.parser.PartTree.isCountProjection()Ljava/lang/Boolean;
但我通过使用适当的罐子组合解决了这个问题,比如
spring-data-jpa-1.2.0.RELEASE.jar <BR>
spring-data-commons-1.6.3.RELEASE.jar <BR>
spring-data-commons-core-1.4.1.RELEASE.jar<BR>
hibernate-entitymanager-4.1.12.final.jar<BR>
hibernate-jpa-2.1-api-1.0.0.final.jar<BR>
hibernate-validator-4.2.0.final.jar<BR>
hibernate-commons-annotations-4.0.0.CR2.jar<BR>
spring-data-jpa-1.2.0.RELEASE.jar
spring-data-commons-1.6.3.RELEASE.jar
spring-data-commons-core-1.4.1.RELEASE.jar
hibernate-entitymanager-4.1.12.final.jar
hibernate-jpa-2.1-api-1.0.0.final.jar
hibernate-validator-4.2.0.final.jar
hibernate-commons-annotations-4.0.0.CR2.jar
并使用SpringCore3.2.5版本的jars。问题解决了
我还使用了正确的方言,即连接到数据库的正确驱动程序。Hi Abhinav。你是对的。问题是MongoAPI是1.0.4版本(我在上找到的最新版本),JPAAPI是1.1.2版本()
<properties>
<!-- Generic properties -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<!-- Spring -->
<spring-framework.version>3.2.9.RELEASE</spring-framework.version>
<spring-data.version>1.6.0.RELEASE</spring-data.version>
<!-- Hibernate / JPA -->
<hibernate.version>3.6.10.Final</hibernate.version>
<!-- Test -->
<junit.version>4.11</junit.version>
</properties>
<dependencies>
<!-- Spring framework -->
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-jpa</artifactId>
<version>${spring-data.version}</version>
</dependency>
<!-- Hibernate -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>${hibernate.version}</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>${hibernate.version}</version>
</dependency>
<dependency>
<groupId>org.hibernate.javax.persistence</groupId>
<artifactId>hibernate-jpa-2.0-api</artifactId>
<version>${hibernate-jpa.version}</version>
</dependency>
....
</dependencies>
org.springframework.data.repository.query.parser.PartTree.isCountProjection()Ljava/lang/Boolean;
spring-data-jpa-1.2.0.RELEASE.jar <BR>
spring-data-commons-1.6.3.RELEASE.jar <BR>
spring-data-commons-core-1.4.1.RELEASE.jar<BR>
hibernate-entitymanager-4.1.12.final.jar<BR>
hibernate-jpa-2.1-api-1.0.0.final.jar<BR>
hibernate-validator-4.2.0.final.jar<BR>
hibernate-commons-annotations-4.0.0.CR2.jar<BR>