代码改成这样后查找单个出错
来源:6-7 -持久化数据到MySQL
15rjgcw
2018-11-20
org.springframework.expression.spel.SpelEvaluationException: EL1008E: Property or field 'id' cannot be found on object of type 'java.util.Optional' - maybe not public or not valid?
@GetMapping("{id}")
public ModelAndView view(@PathVariable("id") Long id, Model model) {
Optional<User> user = userRepository.findById(id);
model.addAttribute("user", user);
model.addAttribute("title", "查看用户");
return new ModelAndView("users/view","userModel",model);
}
写回答
3回答
-
类型不对啊啊,是要返回 User 不是返回 Optional<User> 。
你还是改为跟课程一致的版本吧。~012018-11-20 -
慕粉3255313
2019-03-16
改为findById(id).get()就可以了
00 -
15rjgcw
提问者
2018-11-20
我又知道了
返回的是个容易,需要用get()方法得到对象
model.addAttribute("user", user.get());
012019-03-17
基于Spring Boot技术栈博客系统企业级前后端实战
毕设 Elasticsearch搜索+Thymeleaf模板+JPA+Security+BootStrap
1296 学习 · 738 问题
相似问题