request.getParameter()
- equest.getParameter()方法传递的数据,会从web客户端传到web服务器端,代表HTTP请求数据,该方法返回String类型的数据
- 一般通过表单和链接传递的参数使用getParameter,它是一种取参数的方法。把jsp文件中的数据读取到出来。然后就可以封装利用起来。
<form action="xxxxxxx.do" >
<input name="name" value="哈哈"/>
<input type="submit" value="提交"/>
</form>
这个form提交请求后,在你的action中
String name = request.getparameter("name");
那么name的值就是“哈哈”
request.getAttribute()和 request.setAttribute();
- request.getAttribute(“nameOfObj”)可得到JSP页面一表单中控件的Value。其实表单控件中的Object的 name与value是存放在一个哈希表中的,所以在这里给出Object的name会到哈希表中找出对应它的value。
- 而不同页面间传值使用request.setAttribute(position, nameOfObj)时,只会从a.jsp到b.jsp一次传递,之后这个request就会失去它的作用范围,再传就要再设一个 request.setAttribute()。而使用session.setAttribute()会在一个过程中始终保有这个值。
- request.setAttribute()和getAttribute()只是在web容器内部流转,仅仅是请求处理阶段(这句话太抽象了,确实不好理解)
- 如果两个WEB间为转发关系时,转发目的WEB可以用getAttribute()方法来和转发源WEB共享request范围内的数据
- getAttribute()可以得到对象(我们经常放一个对象到这里面),常用于servlet页面传递参数给jsp
model.addAttribute()和getAttribute()
- .addAttribute往前台传数据,可以传对象,可以传List,通过el表达式 ${}可以获取到,类似于request.setAttribute(“sts”,sts)效果一样。
所以说Attribute的效果都是一样的喽,如果后面我再发现问题我再来改