• Servlet


    Servlet:运行在服务器上的java代码,用来处理请求和响应,是前后端交流的桥梁

    1.在idea中引入tomcat的lib ,Servlet是由Tomcat创建,

     File---Project Structure(项目结构)---- Labraries---相邻一栏的+----java--找到tomcat中lib包 或者选址选Servlet的jar包

    Servlet入门:

    1.定义一个类继承HttpServlet  重写service方法

    public class UserServlet extends HttpServlet {
        @Override
        public void service(ServletRequest req, ServletResponse res) throws ServletException, IOException {
            System.out.println("第一个Servlet程序");
        }
    }

    2.配置web.xml文件

        <servlet>
            <servlet-name>userServlet</servlet-name>//执行的servlet名字随意取名
            <servlet-class>com.offcn.Servlet.UserServlet</servlet-class>//需要执行的Servlet的完整包名加类名
        </servlet>
        <servlet-mapping>
            <servlet-name>userServlet</servlet-name>//名字与上面Servlet名字一样
            <url-pattern>/userServlet</url-pattern>//访问的地址
        </servlet-mapping>

    3.运行

    Servlet执行的流程根据地址http://localhost:8080/untitled_war_exploded/userServlet  到web.xml文件的<servlet-mapping>找到

    相匹配的名字 根据servlet-name标签找到名字 取servlet标签里匹配  拿到 包名和类型  运行类中service方法

    service() doGet()  doPost()的关系

    1. service()方法的底层 也是判断请求方法  然后在调用相应的请求方法

     

      2.一般在开发中使用的就是get post请求 一般会重写 doget()  doPost()方法,service 底层就不用在判断

    1. 解决的方案:

            get()方法调用 post()  解决405的错误

    servlet的生命周期

      1.init() 初始化方法  不是tomcat 一启动就初始化,再请求这个servlet的时候就会初始化

      这个方法只执行一

      2.service() 处理所以的请求与响应  所以的请求与响应都会执行这个方法

      3.destroy()销毁的方法tomcat 服务停止 servlet就销毁了

      /userServlet ==>请求的路径是userServlet 才能访问servlet

      /*     ==> 所以的请求与响应都会执行这个servlet ( 启动idea的时候 默认会执行一次请求)

      /admin/*  请求路径是admin下的所以的路径 都可以请求这个servlet

      *.do  只要是以.do结尾的请求请求方式都可以访问到这个servlet 

      get请求 传递参数的时候会直接拼接url地址 不安全

      get  有长度限制

      get 请求参数的记录会保存在浏览器中

      get 传递参数的时候没有进行加密

      get 一般用于做下载

      post与之相反

     

  • 相关阅读:
    PHP 版本判断 version_compare() 函数
    PHP 版本判断 version_compare() 函数
    PHP 版本判断 version_compare() 函数
    PHP 版本判断 version_compare() 函数
    centos7安装redis
    centos7安装redis
    centos7安装redis
    centos7安装redis
    django detail实现
    Django 捕获url
  • 原文地址:https://www.cnblogs.com/frhl/p/13451911.html
Copyright © 2020-2023  润新知