• Servlet快速入门


    1.Servlet概述

    - servlet= server+applet 运行在服务器端的java程序。
    - Servlet是一个接口,一个类要想通过浏览器被访问到,那么这个类就必须直接或间接的实现Servlet接口

    2.Servlet快速入门

    创建web模块。

    编写普通java文件实现Servlet。

    public class mainServlet implements Servlet {
        /*
        *
        * */
        private ServletConfig servletConfig;
        // init() servlet对象创建时会调用此方法,初始化
        @Override
        public void init(ServletConfig servletConfig) throws ServletException {
            this.servletConfig = servletConfig;
        }
    
        @Override
        public ServletConfig getServletConfig() {
            return this.servletConfig;
        }
        //当用户访问时会调用此方法提供服务
        //用户每次访问时都会调用
        @Override
        public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
            servletResponse.setContentType("text/html;charset=utf-8");
            String encoding = this.servletConfig.getInitParameter("encoding");
            servletResponse.setCharacterEncoding(encoding);
            servletResponse.getWriter().write("你好我叫xz");
        }
        //返回一个介绍信息
        @Override
        public String getServletInfo() {
            return "servlet主程序";
        }
        //servlet对象销毁时调用此方法
        //服务器正常关闭时销毁servlet
        @Override
        public void destroy() {
    
        }
    }
    <!--
        将此类交给 tomcat管理
        servlet-name 当前xml中需要的一个别名(通常为类名)
        servlet-class 限定为全路径地址(反射技术实现)
    -->
        <servlet>
            <servlet-name>mainServlet</servlet-name>
            <servlet-class>cn.xz.mainServlet</servlet-class>
            <init-param>
                <param-name>encoding</param-name>
                <param-value>UTF-8</param-value>
            </init-param>
        </servlet>
    <!--

      servlet-name:给直接别名的servlet绑定映射
      url-pattern:网络地址 注意:必须以 / 开头

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

    3.Servlet相关API

    生命周期:指的是一个对象从生(创建)到死(销毁)的一个过程

    // 1.servlet对象创建时,调用此方法
    public void init(ServletConfig servletConfig);

      1)默认情况下
        用户第一次访问时,创建servlet,调用init方法
      2)修改创建时机
        <load-on-startup></load-on-startup>
        正数:4~N,服务器在启动时创建
        补充:Tomcat软件全局web.xml里面有1,3创建,这里推荐4~N
        负数(默认值):-1,用户第一次访问时创建

    // 2.servlet被用户访问时,调用此方法
    public void service(ServletRequest servletRequest, ServletResponse servletResponse);
    
    
    // 3.servlet对象销毁时,调用此方法
    public void destroy();

    4.Servlet3.0

    // @WebServlet(name = "QuickServlet",urlPatterns = {"/quick","/haha"})
    // @WebServlet(urlPatterns = {"/quick","/haha"})
    // @WebServlet(value = {"/quick","/haha"})
    // @WebServlet({"/quick","/haha"})
    @WebServlet("/quick") // 最终简化版...
    public class QuickServlet extends HttpServlet {
        
        
    }
  • 相关阅读:
    laravel安装
    redis缓存设置和读取
    window下装redis扩展(以php5.5为例)
    静态缓存
    原生js发送ajax请求
    数据库查询语句面试
    Cookie与Session
    面试题-一个for循环输出一个棱形
    编程题:利用for循环打印 9*9 表?
    java面试题之分析(二)
  • 原文地址:https://www.cnblogs.com/xiaozhang666/p/13345958.html
Copyright © 2020-2023  润新知