Servlet 中doGet方法和doPost方法区别:
(1)get是从服务器上获取数据,post是向服务器传送数据;
(2)在客户端,Get方式在通过URL提交数据,数据在URL中可以看到;Post,数据放置在HTML HEADER内提交;
(3)GET方式提交的数据最多只能有1024字节,而POST则没有此限制。
request.getParameter():
(1)request.getParameter()取得是通过容器的实现来取得通过post、get方式传入的数据,request.setAttribute()和 getAttribute()只是在web容器内部流转,仅仅是请求处理阶段。
(2)request.getParameter()方法传递的数据,会从Web客户端 request.getParameter() 方法返回String的数据。
request.setAttribute()和request.getAttribute():
(1)传递的数据只会存在于Web 容器内部,HttpServletRequest 类有 setAttribute() 方法,而没有setParameter() 方 法,当两个页面为连接链接关系时,比如从login.jsp链接到main.jsp,被链接的页面main.jsp可以通过 getParameter()方法来获得请求参数:
login.jsp:
<form name="form1" method="post" action="main.jsp">
姓名:<input type="text" name="username"/><br/>
密码:<input type="password" name="password"/><br/>
<button>登录</button>
</form>
main.jsp:
<%
String username=request.getParameter("username");
out.print(username);
%>
main.jsp向three.jsp传递当前数据可以用setAttribute()方法:
<%
String username=request.getParameter("username");
request.setAttribute("username",username);
response.sendRedirect("three.jsp")
%>
<% String username=request.getAttribute("username"); %>