springMVC中表单的参数,后台是怎么接收的?
有下面这样一段代码,项目是springMVC架构的,但我是菜鸟,代码是别人写的,看不懂后台是怎么接收页面传过来的参数,有大神能解答一下吗?为什么页面的参数都在方法括号里列...
有下面这样一段代码,项目是springMVC架构的,但我是菜鸟,代码是别人写的,看不懂后台是怎么接收页面传过来的参数,有大神能解答一下吗?
为什么页面的参数都在方法括号里列出来? 如果要接收的参数有很多个,是不是要全部都写在括号里?
/**
* 条件查询
*/
@RequestMapping(value="selectCondition")
@ResponseBody
public List selectCondition(String param1,String param2,String param3,String param4,String param5,
String param6,String param7,String date1,String date2){
//more code here. System.out.println("param1="+param1+",param2="+param2+",param3="+param3+",param4="+param4+",param5="+param5);
//more code here.
return null;
} 展开
为什么页面的参数都在方法括号里列出来? 如果要接收的参数有很多个,是不是要全部都写在括号里?
/**
* 条件查询
*/
@RequestMapping(value="selectCondition")
@ResponseBody
public List selectCondition(String param1,String param2,String param3,String param4,String param5,
String param6,String param7,String date1,String date2){
//more code here. System.out.println("param1="+param1+",param2="+param2+",param3="+param3+",param4="+param4+",param5="+param5);
//more code here.
return null;
} 展开
3个回答
展开全部
可以封装对应的实体接收
如
@RequestMapping(value="selectCondition")
@ResponseBody
public List selectCondition(@RequestBody QueryParams params){
String param1= params.getParam1();
.............................
...............................
}
实体的属性名与传过来的参数名必须一致,参数类型必须兼容。属性个数可以多于传过来的参数。
如
public class QueryParams{
private String param1;
private String param2;
...............
//并提供get set 方法
}
如
@RequestMapping(value="selectCondition")
@ResponseBody
public List selectCondition(@RequestBody QueryParams params){
String param1= params.getParam1();
.............................
...............................
}
实体的属性名与传过来的参数名必须一致,参数类型必须兼容。属性个数可以多于传过来的参数。
如
public class QueryParams{
private String param1;
private String param2;
...............
//并提供get set 方法
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果多个可以这么写
@SuppressWarnings({ "unchecked", "rawtypes" })
@RequestMapping(value = {"/assets/addAssets"}, method = RequestMethod.POST)
@ResponseBody
public Object addAssets(HttpServletRequest request)
{}
用 HttpServletRequest request 接收 。
如果是单个参数可以这么写
public Object updCategory(@RequestParam("bm") String bm)
@SuppressWarnings({ "unchecked", "rawtypes" })
@RequestMapping(value = {"/assets/addAssets"}, method = RequestMethod.POST)
@ResponseBody
public Object addAssets(HttpServletRequest request)
{}
用 HttpServletRequest request 接收 。
如果是单个参数可以这么写
public Object updCategory(@RequestParam("bm") String bm)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-03-26
展开全部
这样写只是适合参数可数的但要是参数非常多的时候就可以用可变参数(jdk1.5之后的新特性)了。这样他只是传递一个参数。
追问
能说得详细一点吗?
现在问题主要是spring MVC的数据,在后台是怎么接收?
页面传过来的url 如果是 /Test/selectCondition?param=1\& param1=2\& param2=3\& param3=4....
param参数有好多个,我这个方法要怎么写?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询