getAttribute和getParameter的区别:
(1)取值不同。getAttribute取到的是对象(object),而getParameter取到的是String。
(2)数据传递路径不同。request.getParameter()方法传递的数据,会从Web客户端传到Web服务器端,代表HTTP请求数据;request.setAttribute()和getAttribute()方法传递的数据只会存在于Web容器内部,在具有转发关系的Web组件之间共享。即request.getAttribute()方法返回request范围内存在的对象,而request.getParameter()方法是获取http提交过来的数据。
其他说明:
request.getAttribute表示从request范围取得设置的属性,必须要先setAttribute设置属性,才能通过getAttribute来取得,设置与取得的为Object对象类型 。
request.getParameter表示接收参数,参数为页面提交的参数,包括:表单提交的参数、URL重写(就是xxx?id=1中的id)传的参数等,因此这个并没有设置参数的方法(没有setParameter),而且接收参数返回的不是Object,而是String类型。
setAttribute的参数是String 和 Object ,
request.setAttribute("result", res);//再设置进去
2.取的时候:Double res = (Double)request.getAttribute("result");
double result = res.doubleValue();
另外,需要注意的是使用request.setAttribute时不能使redirect而是forward。即是将请求转发而不是重定向
--------------------------------------------------------------------------------------------------------------------------
一、request.setAttribute不能在页面向action传值,在action中用request.getAttribute取得的值为空。
二、反过来可以,就只在action中request.setAttribute设值,在jsp页面中可以可以request.getAttribute得到。
三、在jsp页面用<input type="text" value="kongdepeng" name="inpu"> 然后再action中用request.getParameter可以得到kongdepeng
转自:http://blog.csdn.net/qq799499343/article/details/8472890
http://blog.csdn.net/aaa1117a8w5s6d/article/details/7279932