java - 无法使用 Spring Boot 设置 H2 JPA 数据库 - 错误:没有可用于自动装配的 bean
问题描述
我遵循了使用 Spring Boot 构建 REST API 的教程。https://spring.io/guides/tutorials/rest/
一切都很好,直到我尝试设置一个@Configuration
来设置 h2 数据库连接。
我有一个存储库
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
interface EmployeeRepository extends JpaRepository<Employee, Long> {}
我有一个 @Entity :
@Entity
public class Employee {
private @Id @GeneratedValue Long id;
private String name;
private String role;
public Employee() {}
}
当然我有我的@SpringBootApplication
@SpringBootApplication
public class RestdemoApplication {
public static void main(String[] args) {
SpringApplication.run(RestdemoApplication.class, args);
}
}
我得到的错误是在 LoadDatabase @Configuration 类中:
当我完全按照教程进行时,为什么会出现错误?教程是否缺少一些关键步骤或注释,还是我在某个地方搞砸了?
解决方案
您的存储库类需要进行注释,@Repository
以便它可以在 Spring 应用程序上下文中注册为 bean:
@Repository
public interface EmployeeRepository extends JpaRepository<Employee, Long> {}
此外,屏幕截图中的错误是 IDE 错误,试图预测启动时的运行时异常。在某些情况下,它可能是误报。
推荐阅读
- ruby-on-rails - Rails 与自定义列数据的关联
- php - 如果请求未通过 Laravel 中的中间件,如何返回数组?
- powershell - 带有 if 语句的 Powershell foreach 循环仅评估第一个语句
- spring-integration - Spring Integration 配置现有流程
- xamarin.android - 对象引用未设置为片段中的对象实例
- flutter - Flutter:在堆栈中的动画图像上触发 GestureDetector
- katalon-studio - 有谁知道在我进入 Katalon 的搜索字段后如何模拟单击键盘上的输入按钮
- python - 贝叶斯优化可能不适用于 CNN 的一些原因是什么
- java - 为什么我不能将非常规类型的 Arraylist<> 注册到 ArrayList<> 中?
- pdfsharp - pdfsharp 超链接 AddDocumentLink 在触摸屏 Android 上不起作用