Tomcat

Easter79
• 阅读 451

web.xml配置

什么是Web.xml

Web.xml是Web应用部署的重要的描述条件,它支持的元素及属性来自于Servlet规范定义。在tomcat中,Web应用的部署描述信息文件包括tomcat/conf/web.xml以及Web应用的WEB-INF/web.xml下的文件。

ServletContext初始化参数

由于该对象比较常用,这里不做多余的描述。开发的都应该了解该对象。

<context-param>
    <param-name>name</param-name>
    <param-value>value</param-value>
    <description>descript</description>
</context-param>

会话配置

<session-config>
    <!--session会话超时时间,单位为分钟-->
    <session-timeout>30</session-timeout>
</session-config>

Servlet声明及映射

Servlet的声明和映射包含了两部分。

<servlet>
    <servlet-name>myServlet</servlet-name>
    <!--拦截后的处理类-->
    <servlet-class>com.rabbit.tomcat.Hello</servlet-class>
    <!--初始化参数-->
    <init-param>
        <param-name>name</param-name>
        <param-value>value</param-value>
    </init-param>
    <!--大于0表示项目启动的时候初始化-->
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>myServlet</servlet-name>
    <!--可以配置多个拦截路径-->
    <url-pattern>/*</url-pattern>
    <url-pattern>*.do</url-pattern>
</servlet-mapping>

应用声明周期监听器

监听器用于监听应用的请求,如果配置多个监听器,那么请求会依次经过监听器,多个监听器就形成了监听器链。

<listener>
    <!--监听器出例类,必须实现javax.servlet.ServletContextListener接口-->
    <listener-class>com.rabbit.tomcat.Hello</listener-class>
</listener>

Filter定义及映射

Filter用于配置web应用过滤器,用于过滤资源请求及响应。

<filter>
    <filter-name>myFilter</filter-name>
    <!--必须实现javax.servlet.Filter接口-->
    <filter-class>com.rabbit.tomcat.Hello</filter-class>
    <!--初始化参数-->
    <init-param>
        <param-name>name</param-name>
        <param-value>value</param-value>
    </init-param>
</filter>

MIME类型映射

MIME:多用途互联网邮件扩展类型,用于设定某类型的扩展名文件将采用何种应用程序打开,当我们通过请求访问该扩展名的资源文件时,浏览器将自动使用指定的应用程序打开返回的资源文件。

<mime-mapping>
    <extension>doc</extension>
    <mime-type>application/msword</mime-type>
</mime-mapping>

注意,这些类型的值都是固定的,工具会带有提示。Tomcat/conf/web.xml文件已经为我们定义了对应的类型,一般不需要额外配置。

欢迎文件列表

当请求地址为web应用的根目录,服务器会尝试在请求地址后面加上欢迎文件并进行请求定向。首先会查找index.html如果没有则查找index.jsp以此类推。

<welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.jsp</welcome-file>
</welcome-file-list>

错误页面

错误页面可以根据响应状态或者响应异常类配置。

<error-page>
    <error-code>404</error-code>
    <location>/404.html</location>
</error-page>
<error-page>
    <exception-type>java.lang.RuntimeException</exception-type>
    <location>/error.jsp</location>
</error-page>
点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Jacquelyn38 Jacquelyn38
2年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Easter79 Easter79
2年前
tomcat源码分析
摘要:在阅读tomcat源码前,我们一般都会有如下几个疑问:web容器和servlet容器的区别是什么;在springMVC中的web.xml是什么时候加载到tomcat中的;tomcat是怎么加载我们的web服务的;tomcat是怎么实现的热部署;一个http请求1.前言1.1问题思考在阅读tomcat源码前,我们
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
虾米大王 虾米大王
1年前
java代码032
code033.jsp获取web.xml中的配置<%在tomcat的web.xml配置文件中,增加如下配置:urljdbc:mysql://127.0.0.1:3306/test%
Wesley13 Wesley13
2年前
JavaWeb中的web.xml文件配置解析
一web.xml的文件重要性  web.xml是servlet规定的启动配置文件,凡属基于servlet的javaWeb容器必遵守这个规范,而目前主流的容器都是基于servlet的,因此可以理解web.xml是每个javaweb应用都离不开web.xml配置文件。  web.xml完整的名字应该叫做部署描述符
Stella981 Stella981
2年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
2年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
为什么mysql不推荐使用雪花ID作为主键
作者:毛辰飞背景在mysql中设计表的时候,mysql官方推荐不要使用uuid或者不连续不重复的雪花id(long形且唯一),而是推荐连续自增的主键id,官方的推荐是auto_increment,那么为什么不建议采用uuid,使用uuid究
Python进阶者 Python进阶者
4个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这
Easter79
Easter79
Lv1
今生可爱与温柔,每一样都不能少。
文章
2.8k
粉丝
5
获赞
1.2k