您的位置:首页 > 运维架构

Servlet学习(三)doGet与doPost

2016-07-18 22:09 471 查看
简单地说,表单内使用Get使得servlet调用doGet方法,表单的属性值回附加在跳转的url上。

而表单内使用Post使得servlet调用doPost方法,跳转url后不附加表单属性。

程序栗子:

htm页面:ThreeParams.htm

<form id="forml" name="forml" method="get" action="servlet/ThreeParams">
<table width="343" border="1">
<tr>
<td width="92">param1</td>
<td width="94">
<input type="text" name="param1" id="param1" />
</td>
</tr>
<tr>
<td>param2</td>
<td><label>
<input type="text" name="param2" id="param2" />
</label></td>
</tr>
<tr>
<td>param3</td>
<td>
<input type="text" name="param3" id="param3" />
</td>
</tr>
<tr>
<td> </td>
<td><label>
<input type="submit" value="提交" />
</label></td>
</tr>
</table>

</form>注意method是get,action是servlet/ThreeParams.
测试java类:

public class ThreeParams extends HttpServlet{

@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

response.setContentType("text/html");
PrintWriter pw = response.getWriter();
pw.println(request.getParameter("param1"));
pw.println("<br>");
pw.println(request.getParameter("param2"));
pw.println("<br>");
pw.println(request.getParameter("param3"));
pw.println("<br>");
}

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

System.out.println("doPost");
doGet(request, response);
}
}/ThreeParams.htm页面(客户端)使用request.getParameter(String s)根据表单name拿到表单值,通过response pw输出。

先测试doGet



运行结果:



测试doPost:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  get post 表单