SpringMVC学习---接收请求参数以及数据回显

传统的后端从前端接收参数的方式

前端:

<input type="text" name="name" value="longlong"/>

后端:

//getParam()获取到的是Object对象,需要强转
//这里获取到的是“longlong”
String name= (String)request.getParam("前端的name值");

SpringMVC的后端从前端接收参数方式

前端:

<input type="text" name="name" value="longlong"/>

后端:

@RequestMapping("/xxx")
public String method(String name){
	System.out.println("从前端接收到的值为:"+name);
	return "viewName";  //这里泛指视图名称
}

值得注意的是,后端方法的参数名name必须与前端传递的数据的name属性一致,但即使不一致,也有方法将前端数据传递到指定参数中:

@RequestMapping("/xxx")
public String method(@RequestParam("name") String myName){
	System.out.println("从前端接收到的值为:"+myName);
	return "viewName";  //这里泛指视图名称
}

只需要在参数前面加一个注解@RequestParam(“xxx”),注解中的值与前端的name属性值对应即可。
有一说一,这个注解最好时时刻刻都加上,这样可以代表括号里的参数是从前端传递过来的,增强了代码的阅读性。

如果前端传递大量的数据该怎么办

答:用类来封装数据
举个栗子:
假设有这样一个类(get和set方法省略):

public class User{
	private int id;
	private String name;
	private int age;
}

前端传递的表单:

<form action="/xxx" method="get">
	<input type="text" name="id"/>
	<input type="text" name="name"/>
	<input type="text" name="age"/>
	<input type="submit" value="提交"/>
</form>

后端数据接收:

@RequestMapping("/xxx")
public String method(User user){
	System.out.println("从前端获取到的id:"+user.id);
	System.out.println("从前端获取到的name:"+user.name);
	System.out.println("从前端获取到的age:"+user.age);
	return "viewName";  //这里泛指视图名称
}

这里需要注意的是:前端中的各个传递信息的标签的name属性值要与Java对应的包装类属性值一致。
这样SpringMVC可以将数据自动装配到封装类里从前端传递到Controller层。
否则后端的封装类对象的有些值就会是null。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值