我已成功实现添加访问并显示所有访问的列表,但现在我仍坚持为单次访问创建 View 。
我的 findById 函数有效:
logger.info("Visit id 2 -> {}", repository.findById(2));
Visit id 2 -> DentistVisitDTO[id='0', dentistName='Mait Kuusevaik', visitTime='2018-10-12T12:15']
当我单击列表项时,它会使用 ID 成功重定向到 url(即“/results/1”等)。有没有办法可以使用 URL 中的 ID 并以某种方式在使用 findById() 的页面?
我是 Spring 和 thymeleaf 新手。
public DentistVisitDTO findById(long id) {
return jdbcTemplate.queryForObject("SELECT * FROM DENTIST_VISIT where id=?", new Object[] { id },
new BeanPropertyRowMapper<DentistVisitDTO>(DentistVisitDTO.class));
}
最佳答案
可以使用Spring MVC/Spring Web的@RequestMapping注解从URL中获取id属性:
import org.springframework.web.bind.annotation.RequestMapping;
@RequestMapping(value="/results/{id}", method=RequestMethod.GET)
public String detail(@PathVariable(value="id") String id, Model model) {
DentistVisitDTO dentistVisit = repository.findById(id);
System.out.println("GET /results [" + id + "]");
model.addAttribute("dentistVisit", dentistVisit);
return "details";
}
关于java - thymeleaf , Spring : stuck on creating a single item view,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52688432/