zoukankan      html  css  js  c++  java
  • 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方法中调用父类方法
     
  • 相关阅读:
    基础很重要~~04.表表达式-上篇
    【T-SQL基础】03.子查询
    【T-SQL基础】02.联接查询
    【T-SQL基础】01.单表查询-几道sql查询题
    【.Net底层剖析】3.用IL来理解属性
    SQL-基础知识
    IL指令速查
    黑客成长之路-01.新手篇-设置路由器
    《拆掉思维里的墙》~~想跳槽的同学可以先看看这本书!
    【解决方案】安装vssdk_full.exe遇到的问题
  • 原文地址:https://www.cnblogs.com/qurui1998/p/10672460.html
Copyright © 2011-2022 走看看