• 【学习笔记】Servlet


    1、Servlet

    • Servlet(Server Applet)服务器小程序,主要功能用于生成动态web内容
    • Servlet是J2EE最重要的组成部分

    2、Apache Tomcat:

    • Tomcat是Apache软件基金会旗下一款免费的开放源代码的web应用服务器程序
    • Tomcat是运行Servlet(服务器小程序)的容器

    3、Tomcat安装与运行

    • Tomcat:web服务器程序,它的职责就是接收来自于web浏览器的请求,并且根据请求的内容去调用对应的Servlet产生HTML的响应,再把这个响应按原路径返回给浏览器,浏览器收到html后将其显示出来
    • Tomcat是完全采用Java开发的
    • 官网:https://tomcat.apache.org/download-80.cgi

    4、IDEA创建Java Web工程

    (1)通过maven向导,创建标准java web工程

    • 创建标准maven工程,在选择maven工程,jdk1.8,设置项目坐标系
    • main文件夹下新建webapp目录
    • 在File-Project Structure-Project Settings-Module-“+”-web中设置,表明该目录保存web应用方面的内容:

    Deployment
    Descriptors中调整核心配置文件web.xml的路径,在将"web"修改为“src\main\webapp”,版本信息与Tomcat保持一致,选择3.1;
    设置web资源路径,选中webapp路径,部署时映射的路径默认为"/"; web应用的启动部署方式,使用默认目录保存最终运行的目录;
    通过以上几步,webapp文件夹出现一个蓝点,说明配置成功了,然后再webapp下面创建初始网页index.html。

    (2)将idea与Tomcat进行绑定,点击Add Configeration

    • 点击template,在Application server中设置使用哪个Tomcat服务器运行程序,点击配置,选择Tomcat安装的目录;
    • 取消自动打开默认网页;
    • 在idea设置页设置的端口,和在web.xml中配置效果相同;
    • Deployment中表明发布的方式,是对上面3.3设置的引用;应用程序上下文application context(web应用访问的前缀),一般设置为“/”
    • 重新点击Configeration,点击“+”,选中刚才配置的Tomcat服务器,即可完成绑定。

    5、servlet是怎么嵌入到Tomcat中运行的

    作为Servlet是不能独立运行的,必须包含在Tomcat中才能运行,真正Tomcat加载运行的是在out目录下的servlet_first_Web_exploded,这个目录包含了完整的web应用的标准结构.

    6、第一个Servlet

    1、java目录下创建java类,命名为FirstServlet

    2、在pom.xml文件下引入servlet依赖

    <dependencies>
       <dependency>
           <groupId>javax.servlet</groupId>
           <artifactId>javax.servlet-api</artifactId>
           <version>3.1.0</version>
       </dependency>
    </dependencies>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    3、firstServelt继承类HttpServlet,然后重写service方法,req代表请求,resp代表响应。当一个类继承HttpServlet时,就会变为Servlet类。

    4、编写web.xml文件,对写好的servlet进行配置,同时配置servlet映射(把url和servlet类对应起来)

    <servlet>
       <servlet-name>first</servlet-name>
       <servlet-class>indi.xxmas.servlet.FirstServlet</servlet-class>
    </servlet>
    
    <servlet-mapping>
       <servlet-name>first</servlet-name>
       <url-pattern>/hi</url-pattern>
    </servlet-mapping>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 配置Servlet的类路径是标签
    • 配置的是与对应的Servlet名称
    • 配置的是Servlet的访问路径
    • 配置Servlet的映射关系

    7、Servlet生命周期

    1、装载—web.xml

    2、创建—构造方法

    3、初始化—init()

    4、提供服务—service()

    5、销毁—destory()

    8、标准Java web工程结构

    组织结构描述
    /Java web应用根目录
    /index默认首页
    /WEB-INFweb应用的安全目录,用于存放配置文件
    /WEB-INF/web.xmlweb.xml是“部署描述性文件”,是该web项目核心配置文件
    /WEB-INF/classes存放编译后的classes文件
    /WEB-INF/lib用于存放web应用依赖的jar文件
    /META-INF/MNIFEST.MF包含web应用的版本等信息

    9、使用注解配置Servlet

    • 可以在Servlet 3.x版本中使用注解配置Servlet
    • 写在类上,双引号说明映射的地址,重启Tomcat生效
    @WebServlet("/anno")
    public class Annotation_servlet extends HttpServlet {
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            PrintWriter writer = resp.getWriter();
            writer.println("Im anootation servlet");
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
  • 相关阅读:
    【论文导读】Learning Causal Semantic Representation forOut-of-Distribution Prediction
    自动驾驶论文总结
    Day 62 数据结构(单向链表,单向循环链表,双向链表)
    飞凌嵌入式受邀参加「NXP创新技术论坛」
    java.lang.Float类下compareTo()方法具有什么功能呢?
    docker-rabbitmq 安装依赖
    如何解决Ubuntu中软件包安装时的404错误(无法安装gdb、cgddb等)
    小文件写入性能 5 倍于 S3FS,JuiceFS 加速生信研究
    幻核退出 “数字藏品有何用”阶段性无解
    微机-------可编程并行接口8255A
  • 原文地址:https://blog.csdn.net/qq_45192089/article/details/126765976