1、前台jsp代碼 himily.jsp,定義了用戶名和密碼兩個輸入框,使用post方式提交:/order-web/HimilyServlet其中order-web為站點名稱,HimilyServlet為servlet訪問路徑

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Welcome to here</title> </head> <body> <form action="/order-web/HimilyServlet" method="Post"> 用戶名:<input type="text" value="請輸入用戶名" name="user" size="20px"><br> 密碼:<input type="password" value="請輸入密碼" name="pswd" size="20px"><br> <input type="submit" value="提交" size="10px"> </form> </body> </html>
2、servlet層代碼:MyServlet.java
新建MyServlet並且指定servlet的路徑為/HimilyServlet

<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>OrderServlet</servlet-name> <display-name>OrderServlet</display-name> <description></description> <servlet-class>com.suning.logistics.order.web.OrderServlet</servlet-class> </servlet> <servlet> <servlet-name>QueryOrder</servlet-name> <display-name>QueryOrder</display-name> <description></description> <servlet-class>com.suning.logistics.order.web.QueryOrder</servlet-class> </servlet> <servlet> <servlet-name>MyServlet</servlet-name> <display-name>MyServlet</display-name> <description></description> <servlet-class>com.suning.logistics.order.web.MyServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>OrderServlet</servlet-name> <url-pattern>/OrderServlet</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>QueryOrder</servlet-name> <url-pattern>/QueryOrder.do</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>MyServlet</servlet-name> <url-pattern>/HimilyServlet</url-pattern> </servlet-mapping> </web-app>
MyServlet.java代碼,這里是接受客戶端的請求以及處理后的響應
方法一:
Map<String,String[]> ps = request.getParameterMap();
獲取客戶端的所有請求參數的Key和Value值存入一個Map中,並且Value是數組類型,便於有相同key的時候組成二維數組

1 package com.suning.logistics.order.web; 2 3 import java.io.IOException; 4 import java.io.PrintWriter; 5 import java.security.Principal; 6 import java.util.Map; 7 8 import javax.servlet.ServletException; 9 import javax.servlet.http.HttpServlet; 10 import javax.servlet.http.HttpServletRequest; 11 import javax.servlet.http.HttpServletResponse; 12 13 /** 14 * Servlet implementation class MyServlet 15 */ 16 public class MyServlet extends HttpServlet { 17 private static final long serialVersionUID = 1L; 18 19 /** 20 * @see HttpServlet#HttpServlet() 21 */ 22 public MyServlet() { 23 super(); 24 // TODO Auto-generated constructor stub 25 } 26 27 /** 28 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) 29 */ 30 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 31 try{ 32 //System.out.println("himily's servlet!"); 33 //response.getWriter().write("aaaa"); 34 request.setCharacterEncoding("utf-8"); 35 response.setContentType("text/html;charset=utf-8"); 36 String user = request.getParameter("user"); 37 String pswd = request.getParameter("pswd"); 38 response.setStatus(200); 39 PrintWriter pw=response.getWriter(); 40 pw.write("<html><body><p>登錄成功!\n你輸入的用戶名為:"+user+"\n你輸入的密碼為:"+pswd+"</p></body></html>"); 41 pw.close(); 42 }catch(Exception e){ 43 response.getWriter().write(e.toString()); 44 } 45 46 47 } 48 49 /** 50 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) 51 */ 52 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 53 // TODO Auto-generated method stub 54 //doGet(request,response); 55 Map<String,String[]> ps = request.getParameterMap(); 56 request.setCharacterEncoding("utf-8"); 57 response.setContentType("text/html;charset=utf-8"); 58 // String user = request.getParameter("user"); 59 // String pswd = request.getParameter("pswd"); 60 response.setStatus(200); 61 PrintWriter pw=response.getWriter(); 62 pw.write("<html><body><p>登錄成功!\n你輸入的用戶名為:"+ps.get("user")[0]+"\n你輸入的密碼為:"+ps.get("pswd")[0]+"</p></body></html>"); 63 pw.close(); 64 } 65 66 }
方法二:
//獲取客戶端POST參數的值
String user = request.getParameter("user");
String pswd = request.getParameter("pswd");

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub //doGet(request,response); //Map<String,String[]> ps = request.getParameterMap(); request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); //獲取客戶端POST參數的值 String user = request.getParameter("user"); String pswd = request.getParameter("pswd"); response.setStatus(200); PrintWriter pw=response.getWriter(); //輸出響應信息到客戶端 pw.write("<html><body><p>登錄成功!\n你輸入的用戶名為:"+user+"\n你輸入的密碼為:"+pswd+"</p></body></html>"); pw.close(); }
3、訪問地址:
POST訪問地址為:http://localhost:9008/order-web/himily.jsp
Get方式訪問地址:http://localhost:9008/order-web/HimilyServlet?user=aaa&pswd=bbbb
直接訪問Servlet的地址:http://localhost:9008/order-web/HimilyServlet