实例化JPA存储库的问题

希望有人可以帮助我解决下面的问题。我对自动装配,bean和springboot还是很陌生的,因此对您的帮助将不胜感激。

问题:

  1. 我需要在其中使用JPA存储库的类不能用@ Component,@ Service等注释
  2. 我无法在构造函数中初始化它,因为我是从另一个无法传递存储库的类中调用它的

错误: 当我尝试在FilterClass内调用addressRepository时,出现空指针错误。

我想做的是: 消除空指针错误,以便我可以使用addressRepository返回可用于构建过滤器查询的值。

码:

public class FilterSpecification implements Specification<User> {

    private final UserFilter userFilter;

    @Autowired
    private AddressRepository addressRepository;

    public FilterSpecification (UserFilter userFilter) {
        this.userFilter = userFilter;
    }

    public String getAddress(UserFilter userFilter) {
         //Nullpointer is here
        String postCode = addressRepository.findByAddress(userFilter.getAddress)
    }

上面的类中的构造函数是从UserService调用的,因此无法添加addressRepository作为参数。

@Service
public class UserServiceImp implements UserService {

    @Override
    public List<User> getUsers(Filter filter) {

        return userRepositry.findAll(new FilterSpecification(filter));

    }

**编辑-添加AddressRepository **

@Repository
public interface AddressRespository extends JpaRepository<Address, String> {

    String findByAddress(String address);
}