我有界面:
@Repository
public interface EmpoleyeeRepository extends
HumanRepository<Employee, Long> {
}
@NoRepositoryBean
public interface HumanRepository<T, ID> extends JpaRepository<T, ID> {}
和我的班级:
public class EmployeeClassWithRepositor {
@Autowired
private EmpoleyeeRepository employeeRepository;
EmployeeClassWithRepositor() {
Optional<Employee> employee = employeeRepository.findById(1L);
}
}
但是此存储库实际上为空。.如何将其与此类连接?以电子方式创建JpaRepository的适当bean(我不想通过实现此接口repo来创建类)
答案 0 :(得分:0)
我的建议:
您似乎通过包装Jpa实体并将存储库注入域对象来尝试实现Active Record模式(每个实体负责自身的持久化)。
这在春季很少实践。 而是创建一个带有@Service注释的服务类。 在此处注入您的存储库类。 调用您的存储库方法以获取实体。
Spring仅将对象注入到托管bean。 您的EmployeeWithRepositori不受管理,因此不会注入任何东西