在 Spring 引导应用程序中创建 class 的 bean?

creating bean of a class in Spring Boot application?

我正在尝试直接从 Spring 引导应用程序中超出实体管理器。但是我无法创建包含我需要的方法的 class bean。我指的是以下文章。

https://dzone.com/articles/accessing-the-entitymanager-from-spring-data-jpa

ProductCategoryRepositoryCustom 界面:-

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);
    }
}

配置Class:-

@Configuration
public class ProductConfig {
    
    @Bean
    public ProductCategoryRepositoryImpl productCategoryRepositoryImpl(){
        return new ProductCategoryRepositoryImpl();
    } 

}

发生所有这些事情后,当我尝试使用@Autowire 注释自动连接它时,我无法访问我已实现的方法。

您不需要配置 class。由于 @Component 注释,您的存储库已经是一个 bean。