servlet

作者: 无聊新生 | 来源:发表于2017-08-21 19:14 被阅读0次

    servlet的入门

    1、创建一个类,实现Servlet接口

    public class MyServlet implements Servlet{}
    

    2、重写init、service、destory

        public void init(ServletConfig config) throws ServletException {
            System.out.println("-------init----------");    
        }
    
        public void service(ServletRequest req, ServletResponse resp) throws ServletException, IOException {
            System.out.println("-------service----------");
        }
    
        public void destroy() {
            System.out.println("-------destroy--------");   
        }
    

    3、配置web.xml

    1.png

    当用户访问<url-pattern>配置的地址时,tomcat会自动找到该地址对应的<servlet-name>,然后通过该servlet-name找到对应的<servlet-class>

    注意:

    1. <url-pattern>配置地址时一定要在前面加/,不然服务器启动报错
    2. <servlet-class>建议复制类名,不要手敲
    

    servlet执行过程

    1. 用户第一次访问servlet时,会调用init()方法,实例化servlet(所以第一次访问比较慢,与jsp一样)
    2. 然后调用service()方法,处理用户请求与响应
    3. 用户第二次方法就不再调用init()方法了,直接调用service()
    4. 当tomcat容器摧毁时,会调用destory()方法
    

    servlet的另外两种使用方法

    1. 继承GenericServlet类,重写service()
    public class YourServlet extends GenericServlet{
        public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
        }
    }
    
    1. 继承HttpServlet类,重写doGet()和doPost()
    public class OurServlet extends HttpServlet {
        // 处理get请求
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {       
        }
        // 处理post请求
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            doGet(req, resp);// post请求到get请求中处理
        }
    }
    

    servlet映射的另外一种配置方式:java注解

    @WebServlet("/our") //里面的参数时servlet的访问路径
    public class OurServlet extends HttpServlet {}
    

    servlet三大域对象

    request ---> HttpServletRequest

    session ----> HttpSession

    application ----> ServletContext

    pageContext

    config ---> ServletConfig

    相关文章

      网友评论

          本文标题:servlet

          本文链接:https://www.haomeiwen.com/subject/gmjhdxtx.html