Java springmvc-参数绑定
这段代码怎么会起作用?在参数之前,我没有指定任何自定义转换器或注释(如Java springmvc-参数绑定,java,spring,spring-mvc,Java,Spring,Spring Mvc,这段代码怎么会起作用?在参数之前,我没有指定任何自定义转换器或注释(如@RequestBody或@modeldattribute)?此GET调用已正确填写请求: http://localhost:8080/WS/foo?token=C124EBD7-D9A5-4E21-9C0F-3402A1EE5E9B&lastSync=2001-01-01T00:00:00&pageNo=1 代码: 这是我提出请求之前的原始方法 @RestController @RequestMapping
@RequestBody
或@modeldattribute
)?此GET调用已正确填写请求:
http://localhost:8080/WS/foo?token=C124EBD7-D9A5-4E21-9C0F-3402A1EE5E9B&lastSync=2001-01-01T00:00:00&pageNo=1
代码:
这是我提出请求之前的原始方法
@RestController
@RequestMapping(value = "/foo")
public class FooController {
@RequestMapping(method = RequestMethod.GET)
public Result<Foo> excursions(@RequestParam String token, @RequestParam @DateTimeFormat(pattern = IsoDateTime.DATETIME) Date lastSync, @RequestParam Integer pageNo) {
// ...
}
}
@RestController
@请求映射(value=“/foo”)
公共类FooController{
@RequestMapping(method=RequestMethod.GET)
公共结果偏移(@RequestParam字符串标记,@RequestParam@DateTimeFormat(pattern=IsoDateTime.DATETIME)Date lastSync,@RequestParam整数pageNo){
// ...
}
}
默认情况下,请求参数将映射到POJO,就像您的情况一样。此外,如果使用,将在模型中创建一个属性。然后可以在视图(例如JSP)中使用该属性来访问对象
@RequestBody
注释说明请求的主体不是一组表单参数,如
token=C124EBD7-D9A5-4E21-9C0F-3402A1EE5E9B&lastSync=2001-01-01T00:00:00&pageNo=1
但它采用其他格式,如JSON。这是Spring MVC提供的一项功能:
可定制的绑定和验证。类型不匹配,例如应用程序级验证错误,这些错误会保留有问题的值、本地化的日期和数字绑定等,而不是仅保留字符串的表单对象,并手动解析和转换为业务对象
您可以在文档中看到它:
@RestController
@RequestMapping(value = "/foo")
public class FooController {
@RequestMapping(method = RequestMethod.GET)
public Result<Foo> excursions(@RequestParam String token, @RequestParam @DateTimeFormat(pattern = IsoDateTime.DATETIME) Date lastSync, @RequestParam Integer pageNo) {
// ...
}
}
token=C124EBD7-D9A5-4E21-9C0F-3402A1EE5E9B&lastSync=2001-01-01T00:00:00&pageNo=1