我试图直接从Spring启动应用程序中过量使用Entity Manager。但是我无法创建包含我需要的方法的类的bean。我从下一篇文章中引用。
https://dzone.com/articles/accessing-the-entitymanager-from-spring-data-jpa
ProductCategoryRepository自定义界面:-
public interface ProductCategoryRepositoryCustom {
public void merge(ProductCategory productcategory);
public ProductCategory find(int id);
public void persist(ProductCategory productcategory);
}
ProductCategoryRepositoryImpl 实现 ProductCategoryRepositoryCustom :-
@Component
public class ProductCategoryRepositoryImpl implements ProductCategoryRepositoryCustom {
@PersistenceContext
private EntityManager entityManager;
@Override
public void merge(ProductCategory productcategory) {
entityManager.merge(productcategory);
}
@Override
public ProductCategory find(int id) {
ProductCategory productCategory=entityManager.find(ProductCategory.class,id);
return productCategory;
}
@Override
public void persist(ProductCategory productcategory) {
entityManager.persist(productcategory);
}
}
配置类:-
@Configuration
public class ProductConfig {
@Bean
public ProductCategoryRepositoryImpl productCategoryRepositoryImpl(){
return new ProductCategoryRepositoryImpl();
}
}
在所有这些事情之后,当我尝试使用@Autowire注释自动连接它时,我无法访问已实现的方法。 请帮助我,让我知道我做错了什么。 谢谢我前进。
答案 0 :(得分:1)
您不需要配置类。由于 @Component 批注,您的存储库已经是一个bean。