spring data jpa 操作数据库时No property toPredicate found for type Customer!

"D:\Program Files\Java\jdk1.8.0_151\bin\java.exe" -ea -Didea.test.cyclic.buffer.size=1048576 "-javaagent:D:\Program Files\JetBrains\IntelliJ IDEA 2018.02.02\IntelliJ IDEA 2018.2.2\lib\idea_rt.jar=51600:D:\Program Files\JetBrains\IntelliJ IDEA 2018.02.02\IntelliJ IDEA 2018.2.2\bin" -Dfile.encoding=UTF-8 -classpath "D:\Program Files\JetBrains\IntelliJ IDEA 2018.02.02\IntelliJ IDEA 2018.2.2\lib\idea_rt.jar;D:\Program Files\JetBrains\IntelliJ IDEA 2018.02.02\IntelliJ IDEA 2018.2.2\plugins\junit\lib\junit-rt.jar;D:\Program Files\JetBrains\IntelliJ IDEA 2018.02.02\IntelliJ IDEA 2018.2.2\plugins\junit\lib\junit5-rt.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\charsets.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\deploy.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\access-bridge-64.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\cldrdata.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\dnsns.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\jaccess.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\jfxrt.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\localedata.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\nashorn.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\sunec.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\sunjce_provider.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\sunmscapi.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\sunpkcs11.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\ext\zipfs.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\javaws.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\jce.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\jfr.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\jfxswt.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\jsse.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\management-agent.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\plugin.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\resources.jar;D:\Program Files\Java\jdk1.8.0_151\jre\lib\rt.jar;H:\IDEA\ExtCoder\SpringDataJPA_day02\target\test-classes;H:\IDEA\ExtCoder\SpringDataJPA_day02\target\classes;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\junit\junit\4.12\junit-4.12.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\hamcrest\hamcrest-core\1.3\hamcrest-core-1.3.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\springframework\spring-test\5.0.7.RELEASE\spring-test-5.0.7.RELEASE.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\springframework\spring-core\5.0.7.RELEASE\spring-core-5.0.7.RELEASE.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\springframework\spring-jcl\5.0.7.RELEASE\spring-jcl-5.0.7.RELEASE.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\springframework\spring-context\5.0.7.RELEASE\spring-context-5.0.7.RELEASE.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\springframework\spring-aop\5.0.7.RELEASE\spring-aop-5.0.7.RELEASE.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\springframework\spring-beans\5.0.7.RELEASE\spring-beans-5.0.7.RELEASE.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\springframework\spring-expression\5.0.7.RELEASE\spring-expression-5.0.7.RELEASE.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\springframework\spring-aspects\5.0.7.RELEASE\spring-aspects-5.0.7.RELEASE.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\aspectj\aspectjweaver\1.8.13\aspectjweaver-1.8.13.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\springframework\spring-orm\5.0.7.RELEASE\spring-orm-5.0.7.RELEASE.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\springframework\spring-jdbc\5.0.7.RELEASE\spring-jdbc-5.0.7.RELEASE.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\springframework\spring-tx\5.0.7.RELEASE\spring-tx-5.0.7.RELEASE.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\hibernate\hibernate-core\5.0.7.Final\hibernate-core-5.0.7.Final.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\jboss\logging\jboss-logging\3.3.0.Final\jboss-logging-3.3.0.Final.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\hibernate\javax\persistence\hibernate-jpa-2.1-api\1.0.0.Final\hibernate-jpa-2.1-api-1.0.0.Final.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\javassist\javassist\3.18.1-GA\javassist-3.18.1-GA.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\antlr\antlr\2.7.7\antlr-2.7.7.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\apache\geronimo\specs\geronimo-jta_1.1_spec\1.1.1\geronimo-jta_1.1_spec-1.1.1.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\jboss\jandex\2.0.0.Final\jandex-2.0.0.Final.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\dom4j\dom4j\1.6.1\dom4j-1.6.1.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\xml-apis\xml-apis\1.0.b2\xml-apis-1.0.b2.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\hibernate\common\hibernate-commons-annotations\5.0.1.Final\hibernate-commons-annotations-5.0.1.Final.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\hibernate\hibernate-entitymanager\5.0.7.Final\hibernate-entitymanager-5.0.7.Final.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\com\zaxxer\HikariCP\3.2.0\HikariCP-3.2.0.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\slf4j\slf4j-api\1.7.25\slf4j-api-1.7.25.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\slf4j\slf4j-log4j12\1.6.6\slf4j-log4j12-1.6.6.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\log4j\log4j\1.2.17\log4j-1.2.17.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\mysql\mysql-connector-java\5.1.6\mysql-connector-java-5.1.6.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\springframework\data\spring-data-jpa\2.0.1.RELEASE\spring-data-jpa-2.0.1.RELEASE.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\springframework\data\spring-data-commons\2.0.1.RELEASE\spring-data-commons-2.0.1.RELEASE.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\aspectj\aspectjrt\1.8.12\aspectjrt-1.8.12.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\javax\el\javax.el-api\2.2.4\javax.el-api-2.2.4.jar;D:\JavaWeb\Apache-maven\apache-maven-3.5.2-bin\apache-maven-3.5.2\Repository\org\glassfish\web\javax.el\2.2.4\javax.el-2.2.4.jar" com.intellij.rt.execution.junit.JUnitStarter -ideVersion5 -junit4 @w@C:\Users\iCopper\AppData\Local\Temp\idea_working_dirs_junit.tmp @C:\Users\iCopper\AppData\Local\Temp\idea_junit.tmp
log4j:WARN No appenders could be found for logger (org.springframework.test.context.junit4.SpringJUnit4ClassRunner).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

java.lang.IllegalStateException: Failed to load ApplicationContext

	at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:125)
	at org.springframework.test.context.support.DefaultTestContext.getApplicationContext(DefaultTestContext.java:108)
	at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.injectDependencies(DependencyInjectionTestExecutionListener.java:117)
	at org.springframework.test.context.support.DependencyInjectionTestExecutionListener.prepareTestInstance(DependencyInjectionTestExecutionListener.java:83)
	at org.springframework.test.context.TestContextManager.prepareTestInstance(TestContextManager.java:246)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.createTest(SpringJUnit4ClassRunner.java:227)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner$1.runReflectiveCall(SpringJUnit4ClassRunner.java:289)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.methodBlock(SpringJUnit4ClassRunner.java:291)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:246)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:97)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
	at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
	at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:190)
	at org.junit.runners.Suite.runChild(Suite.java:128)
	at org.junit.runners.Suite.runChild(Suite.java:27)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
	at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
	at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
	at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
	at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'customerDao': Invocation of init method failed; nested exception is org.springframework.data.mapping.PropertyReferenceException: No property toPredicate found for type Customer!
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1708)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:581)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:503)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:317)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:315)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:741)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:869)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:550)
	at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:128)
	at org.springframework.test.context.support.AbstractGenericContextLoader.loadContext(AbstractGenericContextLoader.java:60)
	at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.delegateLoading(AbstractDelegatingSmartContextLoader.java:107)
	at org.springframework.test.context.support.AbstractDelegatingSmartContextLoader.loadContext(AbstractDelegatingSmartContextLoader.java:243)
	at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.java:99)
	at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:117)
	... 32 more
Caused by: org.springframework.data.mapping.PropertyReferenceException: No property toPredicate found for type Customer!
	at org.springframework.data.mapping.PropertyPath.<init>(PropertyPath.java:90)
	at org.springframework.data.mapping.PropertyPath.create(PropertyPath.java:350)
	at org.springframework.data.mapping.PropertyPath.create(PropertyPath.java:330)
	at org.springframework.data.mapping.PropertyPath.lambda$from$0(PropertyPath.java:283)
	at java.util.concurrent.ConcurrentMap.computeIfAbsent(ConcurrentMap.java:324)
	at org.springframework.data.mapping.PropertyPath.from(PropertyPath.java:265)
	at org.springframework.data.mapping.PropertyPath.from(PropertyPath.java:248)
	at org.springframework.data.repository.query.parser.Part.<init>(Part.java:81)
	at org.springframework.data.repository.query.parser.PartTree$OrPart.lambda$new$0(PartTree.java:250)
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
	at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
	at java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
	at org.springframework.data.repository.query.parser.PartTree$OrPart.<init>(PartTree.java:251)
	at org.springframework.data.repository.query.parser.PartTree$Predicate.lambda$new$0(PartTree.java:380)
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
	at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
	at java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
	at org.springframework.data.repository.query.parser.PartTree$Predicate.<init>(PartTree.java:381)
	at org.springframework.data.repository.query.parser.PartTree.<init>(PartTree.java:93)
	at org.springframework.data.jpa.repository.query.PartTreeJpaQuery.<init>(PartTreeJpaQuery.java:70)
	at org.springframework.data.jpa.repository.query.JpaQueryLookupStrategy$CreateQueryLookupStrategy.resolveQuery(JpaQueryLookupStrategy.java:105)
	at org.springframework.data.jpa.repository.query.JpaQueryLookupStrategy$CreateIfNotFoundQueryLookupStrategy.resolveQuery(JpaQueryLookupStrategy.java:215)
	at org.springframework.data.jpa.repository.query.JpaQueryLookupStrategy$AbstractQueryLookupStrategy.resolveQuery(JpaQueryLookupStrategy.java:79)
	at org.springframework.data.repository.core.support.RepositoryFactorySupport$QueryExecutorMethodInterceptor.lambda$null$0(RepositoryFactorySupport.java:525)
	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
	at java.util.Iterator.forEachRemaining(Iterator.java:116)
	at java.util.Collections$UnmodifiableCollection$1.forEachRemaining(Collections.java:1049)
	at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
	at org.springframework.data.repository.core.support.RepositoryFactorySupport$QueryExecutorMethodInterceptor.lambda$new$2(RepositoryFactorySupport.java:527)
	at java.util.Optional.map(Optional.java:215)
	at org.springframework.data.repository.core.support.RepositoryFactorySupport$QueryExecutorMethodInterceptor.<init>(RepositoryFactorySupport.java:518)
	at org.springframework.data.repository.core.support.RepositoryFactorySupport.getRepository(RepositoryFactorySupport.java:315)
	at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.lambda$afterPropertiesSet$3(RepositoryFactoryBeanSupport.java:287)
	at org.springframework.data.util.Lazy.getNullable(Lazy.java:141)
	at org.springframework.data.util.Lazy.get(Lazy.java:63)
	at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.afterPropertiesSet(RepositoryFactoryBeanSupport.java:290)
	at org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean.afterPropertiesSet(JpaRepositoryFactoryBean.java:102)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1767)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1704)
	... 47 more


Process finished with exit code -1

主要报错点:No property toPredicate found for type Customer!

spring data jpa 操作数据库时,只需要定义接口并继承

JpaRepository<实体类类型,主键类型>和JpaSpecificationExecutor<实体类类型>  而specification是复杂查询的构造器,用于实际过程中的查询
继承接口更改后测试,通过

猜你喜欢

转载自blog.csdn.net/iCopper_/article/details/83097477