我是Spring的新手,这是我第一次使用它。我遵循了教程,但是有一些问题。我找到了解决该问题的方法,这有助于我避免将代码标记为红色。但是,该应用程序仍无法正常工作。我收到错误,不知道为什么。这是我的代码:
ExitController:
@Autowired
private exitServiceexitService;
@RequestMapping("/exits")
public List<Topic> getAllExits() {
return exitService.getAllExits();
}
@RequestMapping("/exits/{id}")
public Topic getTopic(@PathVariable String id) {
return exitService.getExit(id);
}
@RequestMapping(method=RequestMethod.POST, value="/exits")
public void addExit(@RequestBody Exit exit) {
topicService.addExit(exit);
}
@RequestMapping(method=RequestMethod.PUT, value="/exits/{id}")
public void updateExit(@RequestBody Exit exit, @PathVariable String id) {
exitService.updateExit(id, exit);
}
@RequestMapping(method=RequestMethod.DELETE, value="/exits/{id}")
public void deleteExit(@PathVariable String id) {
exitService.deleteTopic(id);
}
}
ExitServices类:
@Autowired
private TopicRepository exitRepository;
private List<Topic> exits = new ArrayList<>(Arrays.asList(
new Topic("spring", "Spring", "Spring"),
new Topic("java", "Java", "Java"),
new Topic("javascript", "JavaScript", "JavaScript")
));
public List<Topic> getAllExits() {
List<Topic> exits= new ArrayList<>();
exitRepository.findAll()
.forEach(exits::add);
return exits;
}
public Topic getExit(String id) {
return exitRepository.findById(id).orElse(null);
}
public void addExit(Exitexit) {
exitRepository.save(exit);
}
public void updateexit(String id, Exit exit) {
for (int i=0; i <exits.size(); i++) {
Topic t = exits.get(i);
if(t.getId().equals(id)) {
exits.set(i, exit);
return;
}
}
}
public void deleteExit(String id) {
topics.removeIf(t -> t.getId().contentEquals(id));
}
}
退出类:
private String id;
private String name;
private String description;
public Exit() {}
public Exit(String id, String name, String description) {
super();
this.id = id;
this.name = name;
this.description = description;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
我也在::>中添加了此内容
<resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> </resource> </resources>
我使用spring.profiles.active = @ spring.profiles.active @,因为它没有激活。
我是Spring的新手,这是我第一次使用它。我遵循了教程,但是有一些问题。我找到了解决该问题的方法,这使我没有将代码标记为...
这似乎与Java 11和spring jpa集成无关。但是,我们不知道是否在您的控制器上看不到更多详细信息。检查端点是否正确/exits/
与/exits
。但是,如果需要答案,请提供更多详细信息。