对于最近我们项目组在用springMVC框架做东东,但是了在Get请求传递参数的时候我就遇到了这样的一个问题,就是如果对于参数少的可以使用注解@RequestParam(value="xxx")来进行绑定,但是对于参数多的怎么办了,而且我还发现一个问题怎样和@valid这个注解结合使用了。
所以我在上班之余研究了一下怎样把get请求的参数封装到实体类中去,于是我自己定义了一个实体类,如下:
public class Commodity {
private String name;
private Integer brandId;
public Commodity() {
}
public Commodity(String name, Integer brandId) {
this.name = name;
this.brandId = brandId;
}
/**
* @return the name
*/
public String getName() {
return name;
}
/**
* @param name the name to set
*/
public void setName(String name) {
this.name = name;
}
/**
* @return the brandId
*/
public Integer getBrandId() {
return brandId;
}
/**
* @param brandId the brandId to set
*/
public void setBrandId(Integer brandId) {
this.brandId = brandId;
}
}
jsp页面,页面如下:
<a href="/commodity/search.do?name='猪肉'&brandId=12">商品列表</a>
,
然后,我自己写了一个测试的控制层,代码如下:
@Controller
@RequestMapping(value="/commodity")
public class CommodityController {
@RequestMapping(value="/search.do")
public String commoditySearch(Commodity commodity, ModelMap modelMap) {
System.out.println(commodity.getName()+":"+commodity.getBrandId());
return "commodity/search";
}
}
运行tomcat之后,访问首页点击超链接他直接跳转到commodityController里面,并且把我传递的参数封装成了Commodity对象,但是我把链接里面的参数名字改了一下发现这个实体类是无法接受我传递的参数,说明从客户端发出来的请求之后就会根据请求调用control层的代码,请求我估计根据调用的请求会实例化一个Commodity对象,然后调用Commodity对象的set方法(估计根据“set”+参数名称),然后把参数封装到实体里面,这样做的话就对于传参以及验证非常方便了。
不过以上写的只是我自己边写边想的结果,如有不对请大家立即指出。希望能够与大家共同进步
分享到:
相关推荐
SpringMVC接收请求参数区别
SpringMVC请求参数接收 1 GET方法请求参数处理 2 表单参数 3 【非对象】- 非对象类型单个参数接收。 3 【对象】 - 对象类型参数接收。 4 【数组】 - 列表或者数组类型参数。 5 JSON参数 6 URL路径参数 6 文件上传 8 ...
SpringMVC之请求参数的获取方式.pdfSpringMVC之请求参数的获取方式.pdfSpringMVC之请求参数的获取方式.pdfSpringMVC之请求参数的获取方式.pdfSpringMVC之请求参数的获取方式.pdfSpringMVC之请求参数的获取方式....
SpringMVC后台接收请求参数的几种方式源码。总结了常用的注解,介绍GET和POST请求方式下的参数传递方法。
Springmvc请求处理方法参数Springmvc请求处理方法参数
本demo 用来写了springmvc如何接受ajax传集合以及接收form表单传集合
本文详细解析了springmvc接收参数的各种情况,适合项目实践开发调试。
主要给大家介绍了关于Spring MVC请求参数与响应结果全局加密和解密的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
springmvc接收ajax请求注意事项
springMVC+Mybatis封装整合:整合搭建已经完成不再述,本框架特色主要针对Mybatis框架BaseDao,BaseService,BaseServiceImpl封装,有点贵,本人也是循序见进到这一步,花了将近一个月时间,之前发布版本可以不下载...
SpringMVC解决GET请求时中文乱码的问题.rar
前后几次发布springmvc+Mybatis整合封装,这是最终版本,毕竟是心血之做,愿 意给分请下载!
springmvc+spring线程池处理http并发请求数据同步控制问题
springmvc各种参数绑定源码实现
NULL 博文链接:https://cdxs2.iteye.com/blog/1950519
使用@RequestParam、@RequestHeader和@CookieValue注解分别映射请求参数、请求头和Cookie值信息到相应处理方法的入...另外,SpringMVC也支持使用POJO对象绑定请求参数,且也可以使用Servlet原生API作为目标方法的形参。
SpringMVC的参数请,整理了常见的参数处理方法
使用Ajax从页面向控制层请求数据,并将提交的数据再次返回,国外网站下载代码,很有参考意义。请使用Eclipse工具
SpringMVC+Mybatis封装实例,主要在dao、service、controller层封装,实例可运行
慨括了spring mvc请求参数常见的几种获取方法