• Servlet 学习


    3.1  概念    运行在服务器端的小程序
                     Servlet  就是一个接口  定义JAVA类被浏览器访问(Tomact 识别)的规则   将来 我们需要自定义一个类  实现servlet 接口  重写方法
    3.2  快速入门
                    1  创建一个JavaEE项目
                    2  定义一个实现Servlet 接口
                    3  实现接口中的抽象方法
                    4  配置Servlet   在web.xml 配置
    配置文件:
     <servlet>
            <servlet-name>demo1</servlet-name>      <!-- 可以随便起个名字->     
            <servlet-class>cn.qu.demo.ServletDemo</servlet-class><!-- 路径必须正确  包名 跟类名->
        </servlet>
        <servlet-mapping>
                <!-- 映射->
            <servlet-name>demo1</servlet-name>
                <!--虚拟路径->
            <url-pattern>/aaa</url-pattern>
        </servlet-mapping>
    package cn.lijun.web.servlet;
    
    import javax.servlet.*;
    import javax.servlet.annotation.WebServlet;
    import java.io.IOException;
    @WebServlet("/mingming")
    public class Demo1Servlet implements Servlet {
        @Override
        public void init(ServletConfig servletConfig) throws ServletException {
            System.out.println("我是init我启动了");
        }
    
        @Override
        public ServletConfig getServletConfig() {
            return null;
        }
    
        @Override
        public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
            System.out.println("干事");
        }
    
        @Override
        public String getServletInfo() {
            return null;
        }
    
        @Override
        public void destroy() {
            System.out.println("我被销毁");
        }
    }
    执行原理:
          1.当服务器 接收到客服端浏览器请求后  会解析url地址   获得url路径   获得访问Servlet资源路径
           2 查找web.xml文件  是否有对应的<url-pattern></url-pattern>标签内容
    3 如果有  则找对应的<servlet-class>全类名
    4 tomcat 会将这个类加载进内存  创建其对象
    5 调用其方法
    1.4生命周期
       1  被创建  执行init方法    只执行一次
          Servlet 什么时候被创建    第一次被访问的时候 servlet被创建
       2 提供服务  执行service方法  执行多次  每次访问servlet时候都执行
       3 被销毁 执行destroy方法   服务器被关闭的时候  servlet被销毁 
    1.5Servlet3.0注解配置
         支持注解配置  可以不需要web.xml
    1.6Servlet体系结构
              Servlet      ----接口
             GenericServlet-----抽象类-------》重写service方法
            HttpServlet        抽象类-------》  对HTTP进行了封装 简化操作   doGet()  doPost()
    1.7Servlet相关配置
                Urlpartten:servlet访问的路径
                1 一个servlet可以定义多个访问路径     @WebServlet({“/lijun”,“/demo”,“/de”})
                2 路径的规则
                      1    /XXXX   完全的路径匹配
                       2 /xxx/xxx   多层匹配
                       3 *.xxx    拓展名匹配
    servlet 中几种错误
    404:资源未找到
             原因一:在请求地址中的Servlet的别名书写错误
             原因二:虚拟项目名称拼写错误
    500错误:内部服务器错误
              在web.xml中校验servlet的全限定路径是否正确
              在service方法体中存在逻辑错误 根据错误语法service方法体中的代码进行错误更改
     
    405错误:强求方式不支持
               请求方式和servlet、方法不匹配
              尽量使用service方法  尽量不要在service方法中调用父类方法
     
  • 相关阅读:
    几种典型程序Button处理代码的定位转
    sql server索引使用效率评估
    sql server查询死锁的sql语句
    SqlServer 查询计划
    批量删除Word中的回车符号
    数据在机器中的表示
    win32汇编窗口程序设计[05]获取屏幕分辨率
    清理win7任务栏图标
    Win32汇编窗口程序设计[06]—“Hello Win32ASM”改进版
    关于ASCII码的几点小结
  • 原文地址:https://www.cnblogs.com/qurui1998/p/10672460.html
Copyright © 2020-2023  润新知