项目中用到SpringMVC,常见的用法像这样
- @Controller
- @RequestMapping("test")
- class Test{
- @RequestMapping("/hello")
- @ResponseBody
- public Object test(@RequestParameter("name") String name){
- return "hello! "+name;
- }
- }
当GET http://localhost:8080/test/hello?name=aducode请求到服务端时, SpringMVC的 DispatcherServlet处理请求,并根据URL找到@RequestMapping对应的方法,然后根据
@RequestParameter("name") 将url中的name值传递给方法调用
但是Spring还支持默认参数名
表单中input的name值和Controller的参数变量名保持一致,就能完成数据绑定,如果不一致可以使用@RequestParam注解。需要注意的是,如果Controller方法参数中定义的是基本数据类型,但是从页面提交过来的数据为null或者”"的话,会出现数据转换的异常。也就是必须保证表单传递过来的数据不能为null或”",所以,在开发过程中,对可能为空的数据,最好将参数数据类型定义成包装类型。 (摘自:SpringMVC的各种参数绑定方式)
- @Controller
- @RequestMapping("test")
- class Test{
- @RequestMapping("/hello")
- @ResponseBody
- public Object test(String name){
- return "hello! "+name;
- }
- }