【发布时间】:2013-05-26 15:41:39
【问题描述】:
我一直在尝试使用:
@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
这是工作。我可以做些什么来使用 Date ?
谢谢
【问题讨论】:
-
尝试用
@DateTimeFormat(pattern = "ddMMyyyy")注释你的日期参数 -
我已经尝试过使用@DateTimeFormat 但是当我把@PathVariable("datainicio") @DateTimeFormat(pattern = "ddMMyyyy") 日期dataInicio,它也不起作用:-( 只适用于字符串.
-
提示:尝试使用最佳实践并在请求正文或查询参数中传递这两个日期值。 apigee.com/about/api-best-practices =)
-
将答案标记为正确以帮助社区:) 也是stackoverflow.com/questions/15164864/…的副本
标签: java spring spring-mvc