问题已经解决,不过还有个小问题,这个类
PersistenceExceptionTranslationPostProcessor
是干嘛的?
不知道为什么这里用的是JPA配置类,感觉是很古老的用法
@Order(Ordered.HIGHEST_PRECEDENCE)
@Configuration
@EnableTransactionManagement(proxyTargetClass = true)
@EnableJpaRepositories(basePackages = "dbdemo.mysql.repository")
@EntityScan(basePackages = "dbdemo.**.entity")
public class JpaConfiguration {
@Bean
PersistenceExceptionTranslationPostProcessor persistenceExceptionTranslationPostProcessor(){
return new PersistenceExceptionTranslationPostProcessor();
}
}
还有用spring boot 1.4.2 发现 @EntityScan 过时了,用什么代替?(好像把整个JPA配置类去掉都没问题)
网上说的:当使用Hibernate上下文的Session时,抛出的就不是Spring的异常,而是HibernateException,如果我们还想看到Spring的异常体系,就需要做点设置,当然这也很简单。
换句话说,因为这里使用的是springboot提供的jpa,注册这个bean根本是多余的