getParameter的使用方法总结
getParameter得到的都是字符串类型。 或者是为了读取提交的表单的值(http://a.jsp )? id=123的123 ) ),或者某个表单提交过去的数据;
getAttribute是对象Object,需要转换,可以在setAttribute中设置为任意对象,使用灵活,随时可用;
getAttribute ()是获取对象容器内数据值;
getAttribute ()是获取会话的值;
getParameter ()获得从POST/GET传递的参数值;
getParameter (用于在客户端重定向时,即单击链接时或按下提交按钮时传递值,在表单或url中传递值时接收数据。
getAttribute :用于服务器端重定向,即在servlet中使用forward函数,或在struts中使用mapping.findForward。 getAttribute只能接收程序在setAttribute中传递的值。
当APP应用服务器将此对象放在与该页对应的内存中,而气氛优雅的页面服务器重定向到另一页时,APP应用服务器将该内存复制到与另一页对应的内存中现在,getAttribute可以获取您设置的值。 当然,这个方法可以告诉对方。 session也是如此,只是对象在内存中的生命周期不同。
getParameter只是在APP应用程序服务器分析您发送的请求页的文本时,获取您为窗体或url重定向设置的值。
HttpServletRequest类同时具有getAttribute (方法和getParameter )方法。
HttpServletRequest类具有set parameter (set attribute,而不是方法)方法。
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
如果两个Web组件之间存在链接关系,则链接的组件通过getParameter ()方法检索请求参数。 例如,假设welcome.jsp和authenticate.jsp之间存在链接关系,并且welcome.jsp包含以下代码:
authenticate.jsp
或:
请输入用户名。 在authenticate.jsp中,从request.getparameter(「username”)方法检索请求参数username:
% string username=request.getparameter (“username”%
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
如果两个Web组件之间存在传输关系,则目标组件将使用getAttribute ()方法与源组件共享请求范围内的数据。 假设authenticate.jsp和hello.jsp之间存在传输关系。 authenticate.jsp希望将当前用户名传递给hello.jsp,您如何传递此数据? 首先,在authenticate.jsp中调用setAttribute ()方法。
%
string username=request.getparameter (“username”
request.setattribute(「username”、username );
%
JSP :前锋页=“hello.JSP”/
在hello.jsp中,使用getAttribute ()方法获取用户名:
%stringusername=(string ) request.getattribute(「username”); %
Hello: %=username %
在更深层次上,从request.getParameter )方法传递的数据从表示HTTP请求数据的Web客户端传递到Web服务器端。 request.getParameter ()方法返回字符串类型的数据。
request.setAttribute ()和getAttribute () ) )方法传递的数据只存在于Web容器中,并在具有传输关系的Web组件之间共享。 这两种方法允许您设置Object类型的共享数据。
PS:
使用request.getParameter检索表单元素时,缺省字符编码为ISO-8859-1,无法正确显示汉字。 目前有两种解决方法。 一种是在执行操作之前设置request的编码格式。 语法为" request.setcharacterencoding (" gbk " )。 另一种方法是转换字符编码。 语法如下:
% stringstr=request.getparameter (" boy "
byteb [ ]=str.getbytes (“iso-8859-1”);
str=新字符串(b;