day50
servlet
开发步骤
编写servlet
三种创建方式:
继承自HttpServlet
新增一个类,继承自HttpServlet
在该类中重写doGet或者doPost方法
在doGet或者doPost方法中实现页面内容的显示
package com.saas.day50; import java.io.*; import javax.servlet.http.*; import javax.servlet.annotation.*; @WebServlet(name = "helloServlet", value = "/abc") public class HelloServlet extends HttpServlet { private String message; public void init() { message = "Hello World! hello saas!"; } public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { response.setContentType("text/html"); // Hello PrintWriter out = response.getWriter(); out.println("<html><body>"); out.println("<h1>" + message + "</h1>"); out.println("</body></html>"); } public void destroy() { } }
继承自GenericServlet
新增一个类,继承自GenericServlet
在该类中重写service方法
在service方法中实现页面内容的显示
package com.saas.day50; import javax.servlet.GenericServlet; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.annotation.WebServlet; import java.io.IOException; import java.io.PrintWriter; @WebServlet(name = "Hello02Servlet", value = "/xyz") public class Hello02Servlet extends GenericServlet { @Override public void service(ServletRequest servletRequest, ServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); // Hello PrintWriter out = response.getWriter(); out.println("<html><body>"); out.println("<h1>hello say0513</h1>"); out.println("</body></html>"); } }
实现servlet接口
新增一个类,实现Servlet接口
实现Servlet接口中的所有方法
在service方法中实现页面内容的显示
package com.saas.day50; import javax.servlet.*; import javax.servlet.annotation.WebServlet; import java.io.IOException; import java.io.PrintWriter; @WebServlet(name = "HelloServlet03", value = "/hello0829") public class HelloServlet03 implements Servlet { @Override public void init(ServletConfig servletConfig) throws ServletException { System.out.println("-------init------"); } @Override public ServletConfig getServletConfig() { System.out.println("-------getServletConfig------"); return null; } @Override public void service(ServletRequest servletRequest, ServletResponse response) throws ServletException, IOException { System.out.println("-------service------"); response.setContentType("text/html"); // Hello PrintWriter out = response.getWriter(); out.println("<html><body>"); out.println("<h1>hello 0829</h1>"); out.println("</body></html>"); } @Override public String getServletInfo() { System.out.println("-------getServletInfo------"); return null; } @Override public void destroy() { System.out.println("-------destroy------"); } }三种方式都是根据servlet的继承树而来
HttpServlet类继承自GenericServlet,而GenericServlet是一个顶层抽象类,该类实现了Serlvet接口
Servlet接口中由五个方法,init,service,destroy, getServletConfig,getServletInfo