我正在使用spring boot,hibernate enverse。我在 pom.xml 中有以下依赖项
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-envers</artifactId>
</dependency>
以下是我的 envers 配置。
@Configuration
@EnableJpaRepositories(repositoryFactoryBeanClass =
EnversRevisionRepositoryFactoryBean.class, basePackages = {
"com.example.persistence" })
public class EnversConf
{
}
所以包com.example.persistence
有PersonDAO
,AddressDAO
还有实体。
我有以下两个 DAO,
interface PersonDAO extends RevisionRepository<PersonEntity, Integer, Integer>, JpaRepository<PersonEntity, Integer>{}
interface AddressDAO extends JpaRepository<AddressEntity, Integer>{}
我有两个实体PersonEntity
,我想审计和AddressEntity
不想审计。
现在我有以下两项服务,
class PersonServiceImpl implements PersonService{
@Autowire PersonDAO personDAO;
}
class AddressServiceImpl implements AddressService{
@Autowire AddressDAO addressDAO;
}
当我添加@EnableJpaRepositories(...)
配置时,它无法获取AddressDAO
. 我认为EnversRevisionRepositoryFactoryBean
两者都适用RevisionRepository
和JpaRepository
。
我得到了以下异常堆栈跟踪,
org.springframework.beans.factory.UnsatisfiedDependencyException:创建名称为“addressService”的bean时出错:通过字段“addressDAO”表示不满足的依赖关系;嵌套异常是 org.springframework.beans.factory.BeanCreationException:创建名为“addressDAO”的 bean 时出错:init 方法调用失败;嵌套异常是 org.springframework.data.mapping.PropertyReferenceException: No property findAll found for type AddressEntity!
原因:org.springframework.beans.factory.BeanCreationException:创建名为“addressDAO”的bean时出错:调用init方法失败;嵌套异常是 org.springframework.data.mapping.PropertyReferenceException: No property findAll found for type AddressEntity!
引起:org.springframework.data.mapping.PropertyReferenceException:找不到AdressEntity类型的属性findAll!
我是否缺少任何配置。