如何在Spring中通过CrudRepository进行CRUD操作?



我正在使用PostgresSQL,我有以下接口:

@Repository
public interface ExampleRepository extends CrudRepository<ExampleEntity, Long> { }

然后我试着去拿豆子:

ExampleRepository repository = ctx.getBean(ExampleRepository.class);

当然,我不能这样做,因为没有实现,最终我得到

NoSuchBeanDefinitionException: No qualifying bean of type 'ExampleRepository'

我知道这是一个错误的方法,但由于我没有足够的经验,我不知道如何与我的数据库通信。我搜索的任何示例都只解释了如何实现服务& &;控制器,以便通过浏览器与数据库进行交互。但是我想在java代码中做CRUD操作。

谁能给我解释一下吗?任何相关的来源也可以。

我不知道你是如何获得上下文(ctx)在这里。但是常见的方法是不需要@Repository,而应该在@Configuration文件中使用@ enablejparepository。然后使用@Autowired将存储库注入到服务类中(您希望在其中执行存储库bean中的操作)您可以参考下面的链接了解更多细节https://mkyong.com/spring-boot/spring-boot-spring-data-jpa/

您不需要创建bean。它将由spring框架创建,因为你将接口注释为@Repository,你只需要在你的服务类中使用@Autowired,或者你想在哪里使用这个引用。

@Autowired 
private ExampleRepository exampleRepository;

最新更新