request.getParameter与request.getAttribute()

时间:2020-12-09 19:24:58

这里就request为例,不去考虑session。

request对象是javax.servlet.http.HttpServletRequest接口的一个实例,request表示调用JSP页面的请求,如request.getParameter(“paramName”)表示获得Form提交过来的参数。

request.getParameter()返回的是Web客户端向Web服务器端传送数据。

HttpServletRequest类没有setParameter()方法,request.getParameter()用于获取http表单中提交过来的数据,返回的是String类型。

request.setAttribute()和getAttribute()是发生在Web容器内部之间的数据传递,在具有转发关系的Web组件之间共享。

request.getAttribute()方法返回request范围内存在的对象,返回的是Object。setAttribute 是Web服务器把这个对象放在该页面所对应的一块内存中去,当你的页面服务器内部重定向到另一个页面时,应用服务器会把这块内存拷贝另一个页面所对应的内存中。

补充:

public interface HttpServletRequest extends ServletRequest

getParameter()是在服务器端获得客户端传送的数据(表单提交,或地址栏参数等)。

setAttribute()指的是在服务器端已经获得了request之后,又往request中增加新的属性,只有set之后,才能有get操作。getAttribute()是一个Object类型的,需要进行向下类型转换。

一般servlet用setAttribute,getAttribute;jsp用getParameter。