这是我得到bug的文件
@RestController
public class restController {
@Autowired
tdlRepo tdlRepo;
@GetMapping("Hello/{name}")
public String getName(@PathVariable String name){
return "Hello" + name;
}
@GetMapping("GetData")
public List<ListtodoEntity> getData(){
return tdlRepo.findAll();
}
}
字符串
已完成的错误消息:com.example.demo.restController中的字段tdlRepo需要类型为“com.example.demo.tdlRepo”的Bean,但找不到。
注入点有以下注解:- @org.springframework.beans.factory.annotation.Autowired(required=true)
行动:
考虑在配置中定义一个类型为“com.example.demo.tdlRepo”的bean。
我尝试了以下方法:
1.在application.properties中配置数据源
1.在application.properties中配置JPA
1.检查依赖性
1.检查注解但不工作。帮助我
2条答案
按热度按时间fbcarpbf1#
我认为主要的问题是主类在项目中的位置,所以从我在你的类中看到的,你的主类应该位于
字符串
不
型
原因是Spring将扫描从main类当前位置开始的所有子包,因此如果它在
com.example.demo
中,它将扫描所有com.example.demo, com.example.service, com.example.utility
的子包如果你不想移动你的主类,你可以简单地添加额外的属性到你的
@SpringBootApplication
中,你将提到你的bean被定义的所有包https://www.baeldung.com/spring-component-scanning。型
接下来,您需要在application.properties中输入3行
型
最后一件事是pom. xml中的依赖项列表
型
另外,构造函数注入比构造函数中的字段注入更好
型
请记住,我用大写的T命名了repository interface。
型
(再次大写T)
完成所有这些更改后,请确保使用
型
e7arh2l62#
在Java中,类,接口和枚举都应该用Pascal大小写编写。
Spring使用类名命名bean,并将第一个字母转换为。
有关Spring中
Beans
命名约定的更多信息,您可以在此处阅读:Bean-Name