我一直在尝试使用:
@RequestMapping(value="/consultaporusuarioperiodo/{idusuario}/{datainicio}/{datafim}", method = RequestMethod.GET)
public String consultaPorPeriodoUsuario(
@PathVariable("idusuario") Long idUsuario,
@PathVariable("datainicio") Date dataInicio,
@PathVariable("datafim") Date dataFim
,Model model) {
Usuario usuario = usuarioService.buscaPorId(idUsuario);
model.addAttribute("timesheet",timeSheetService.buscaPorPeriodoPorUsuario(dataInicio, dataFim,usuario));
return "timesheetcrud/consultatimesheet";
}
有了这个链接:
http://localhost:8080/timesheet/consultaporusuarioperiodo/1/21012000/22012000
但是我收到了这个错误:
HTTP Status 400 -
type Status report
message
description The request sent by the client was syntactically incorrect ().
Apache Tomcat/7.0.27
当我改为:
@PathVariable("datainicio") String dataInicio,
@PathVariable("datafim") String dataFim
这是工作。如何处理日期?
感谢
答案 0 :(得分:13)
尝试:
@PathVariable("datainicio") @DateTimeFormat(iso=ISO.DATE) String dataInicio,
@PathVariable("datafim") @DateTimeFormat(iso=ISO.DATE) String dataFim
其中ISO.DATE
属于yyyy-mm-dd
模式。
答案 1 :(得分:4)
我必须做一些非常相似的事情。这就是我所做的:
//EDIT CODE
if node.name == "firstButton" {
if firstButtonClicked {
thirdButton.hidden = false
firstButtonClicked = true
}
}
if node.name == "secondButton" {
if secondButtonClicked {
thirdButton.hidden = false
secondButtonClicked = true
}
希望这有帮助!
答案 2 :(得分:0)
按照Spring的精神,最好的选择应该是采用约定以统一的方式处理Date参数。幸运的是,它恰好为您提供了这个小cookie-将其放在application.properties中,然后……Bob是您的叔叔:
spring.mvc.date-format = ddMMyyyy