第一个Servlet程序



标题:第一个Servlet程序
描述:最简单的servlet程序,这里记一下,以后可以用来测试HTTP客户端程序读写Cookie对不对。
环境
[1]Eclipse Luna
[2]apache-tomcat-7.0.54
[3]JDK 1.7.0_65
正文:
[S1]打开Eclipse,主菜单[Windows]->[Perferences]->[Server]->[Runtime Environments]中添加Tomcat服务配置信息


[S2]在Eclipse中新建Dynamic Web Project,命名为TestCookie


[S3]为当前工程添加Servlet,主菜单[New]->[Webs]->[Servlet],命名为FirstServlet
下面是FirstServlet.java源码清单

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class FirstServlet
 */
@WebServlet("/FirstServlet")
public class FirstServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public FirstServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		printCookie(request,response);
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		printCookie(request,response);
	}//end func
	
	void printCookie(HttpServletRequest request, HttpServletResponse response) throws IOException
	{
		response.setContentType("text/html");
		PrintWriter out = response.getWriter();
		out.println("<b>print cookie value.begin</b>");
		
		Cookie[] cookies = request.getCookies();
		if (cookies != null) {
			//找出名称(键)为“cool”的Cookie
			for (int i = 0; i < cookies.length; i++) {
					System.out.println("<h2>" + cookies[i].getName() + ":"
	                         + cookies[i].getValue() + "</h2>");
					out.println("<h2>" + cookies[i].getName() + ":"
                         + cookies[i].getValue() + "</h2>");
			}//end for
		}//end if
		
		if(cookies==null)
		{
			response.addCookie(new Cookie("name","kagula"));
			response.addCookie(new Cookie("where","from Mars"));
			out.println("<h2>create new cookies</h2>");
		}
		out.println("<b>print cookie value.end</b>");
	}//end func
}//end class


[S4][Project Explorer]窗口下,WebContent->WEB-INF节点下添加web.xml
web.xml清单如下

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
  version="3.0"
  metadata-complete="true">
<servlet>
	<description>FirstServlet</description>
	<display-name>FirstServlet</display-name>
	<servlet-name>FirstServlet</servlet-name>  
	<servlet-class>FirstServlet</servlet-class>  
</servlet>  

<servlet-mapping>  
	<servlet-name>FirstServlet</servlet-name>  
	<url-pattern>/FirstServlet</url-pattern>  
</servlet-mapping>
</web-app>


[S5]现在可以启动Debug在“http://localhost:8080/ TestCookie/ FirstServlet”下看到运行结果。

你可能感兴趣的:(第一个Servlet程序)