GetAttribute represents the property that is set from the request scope, it must be setattribute to set the property before it can be obtained by getattribute, which is set with the object type of object GetParameter the receive parameter. Parameters are the parameters of the page submission, including the parameters of the form submission, URL rewriting (which is the ID in xxx?id=1), and so on, so this method does not have a parameter set (no Setparameter), and the receive parameter returns not an object, but a string type
The HttpServletRequest class has both the GetAttribute () method and the GetParameter () method, which differ in the following ways:
(1) The HttpServletRequest class has a setattribute () method and no Setparameter () method
(2) When the links between two Web components are linked, the linked component obtains the request parameters through the GetParameter () method, for example, assuming the link relationship between welcome.jsp and authenticate.jsp, the following code is in welcome.jsp:
<a href= "Authenticate.jsp?username=weiqin" >authenticate.jsp </a>
Or:
<form name= "Form1" method= "Post" action= "authenticate.jsp" >
Please enter your name: <input type= "text" name= "username" >
<input type= "submitted" name= "submit" value= "Submission" >
</form>
The Request.getparameter ("username") method is used in authenticate.jsp to obtain the request parameter username:
<% String username=request.getparameter ("username"); %>
(3) When a forwarding relationship is between two Web components, the forwarding target component shares the data in the request scope with the forwarding source component through the GetAttribute () method. Assume that there is a forwarding relationship between authenticate.jsp and hello.jsp. Authenticate.jsp want to pass the current user name to hello.jsp, how to pass this data? First call the SetAttribute () method in authenticate.jsp:
<%
String Username=request.getparameter ("username");
Request.setattribute ("username", username);
%>
<jsp:forward page= "hello.jsp"/>
Use the GetAttribute () method to get the user name in hello.jsp:
<% string Username= (String) Request.getattribute ("username"); %>
Hello: <%=username%>
From a deeper level of consideration, the data passed by the Request.getparameter () method is uploaded from the Web client to the Web server side, representing the HTTP request data. The Request.getparameter () method returns data of type String.
The data passed by the Request.setattribute () and GetAttribute () methods only exist inside the Web container and are shared between Web components that have a forwarding relationship. These two methods enable you to set shared data of type object.
Request.getparameter () is obtained through the implementation of the container to obtain the data passed through similar post,get, Request.setattribute () and getattribute () just flow inside the Web container, Just the request processing phase, this is really a positive solution.
GetAttribute is the return object, GetParameter returns the string
The Request.getattribute () method returns the object that exists in the request scope, and the Request.getparameter () method is to get the data submitted by HTTP.
Reprint: The difference between setattribute and Setparameter methods