Tomcat的部署描述符web.xml.这是Java web核心配置文件,它控制着整个工程文件的行为方式,它是通过命令参数来配置的。这些参数在服务启动时加载。如下是一个实例web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
<welcome-file-list>
  <welcome-file>index</welcome-file>
</welcome-file-list>

<filter>
  <display-name>EncodingFliter</display-name>
  <filter-name>EncodingFliter</filter-name>
  <filter-class>com.bjsxt.bbs2009.action.EncodingFliter</filter-class>
  <init-param>
    <param-name>encoding</param-name>
    <param-value>UTF-8</param-value>
  </init-param>
</filter>
  <filter-mapping>
  <filter-name>EncodingFliter</filter-name>
  <url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>

  这个xml文件(现在大部分的xml文件)是通过DTD(Document Type Definition)来进行格式的描述和约定的。一个DTD文档主要包含几个方面作用:

  1、对标记定义;

  2、加强标记参数内容的一致性;

  3、使xml语法分析器能够确认文档。

  简单的说,DTD的作用就是供xml解析器来检查xml文件的语法是否正确,另外在相应xml文档不是很充分的情况下,可以通过查看DTD文档来检查xml文件的基本格式和可用配置内容。

二、

  DTD语法快速指南(A,B,C和D在下面示例中代表元素变量)

示例一:<!ELEMENT element(A,B+,C*,D?)>

  表示该元素必须有一个A、至少一个B(由加号表示)、零个或者多个C(由星号表示),及零个或一个D(问号表示)。总结起来就是:+表示一个或者一个以上,*表示零个或者多个,?表示零个或者一个,而不加修饰符就是正好一个。

示例二:<!ELEMENT element (A|B|C)>

  表示该元素可能有A或者B或C之一,这里|表示是其中之一的意思。

示例三:<!ELEMENT element EMPTY>

  表示该元素不包含任何内容,这里的EMPTY就表示不含有任何元素的意思。

示例四:<!ELEMENT element ANY>

  表示该元素可以包含DTD中列出的任何元素,这里的ANY表示任何在DTD中列出的元素。

示例五:<!ELEMENT element (#PCDATAelement2)*>

  表示该元素可能包含经过语法分析的字符数据或另一个元素(element2)。星号*表示混合内容模型——也就是其中的元素可以包含不同类型的属性。

示例六:<!ATTLIST element

      att1 ID #IMPLIED

      att2 CDATA #FIXED "A"

      att3 CDATA #REQUIRED>

  表示该元素包含了三个属性:属性一(att1)是一个可选属性,属性二(att2)是带有固定值A的属性,属性三是必需的文本属性。另外,CDATA表示包括的信息应该是文本。ID属性表明必须填入唯一的标识,每个元素只能有一个ID属性,而且,CDATA表示att2和att3可能包含任何字符串。

转载于:https://www.cnblogs.com/lizhichao/p/5763673.html

Tomcat学习过程相关推荐

  1. Tomcat 学习过程4

    一. Tomcat 开发中日志记录工具的使用. 使用Log4j记录应用开发过程中的问题,Log4j有三个主要组件:Logger.Appender.和layout. 1.1组件说明 1)Logger 的 ...

  2. eclipse java web乱码_JAVA and JAVA WEB with TOMCAT and ECLIPSE 学习过程中遇到的字符乱码问题及解决方法汇总(随时补充)...

    JAVA语言具有跨平台,unicode字符集编码的特点. 但是在开发过程中处理数据时涉及到的字符编码问题零零散散,尤其是处理中文字符时一不留神就可能出现一堆奇奇怪怪的符号,俗称乱码. 对于乱码,究其原 ...

  3. 使用Apache cxf 和Spring在Tomcat下发布Webservice指南

    转载 http://blog.csdn.net/zhangzhaokun/article/details/4750021 最近学习了如何使用apache cxf和Spring发布webservice, ...

  4. 循序渐进看Java web日志跟踪(1)-Tomcat 日志追踪与配置

    日志,是软件运行过程中,对各类操作中重要信息的记录. 日志跟踪,不管对于怎么样的项目来说,都是非常重要的一部分,它关系到项目后期的维护和排错,起着举足轻重的作用.项目开发过程中,对日志的记录规则,也将 ...

  5. tomcat php模块化运行,Windows下 Tomcat 运行 PHP 的配置

    前言: 由于本人在开发和学习过程中需要同时部署 JavaWeb 和 PHP 项目,于是整理了网上的一些相关资料,并结合自己的实际操作,记录于此,以供参考. 一.环境(64bit): 1.操作系统.To ...

  6. java future用法_纯干货:Java学习过程中的21个知识点和技术点

    我们在Java学习过程中要学会抓重点,善于总结,Java学习过程中常见的21个知识点和技术点你知道吗?下面和千锋广州小编一起来看看吧! 1. JVM相关 对于刚刚接触Java的人来说,JVM相关的知识 ...

  7. Linux环境下Tomcat部署Solr4.x

    Linux环境下Tomcat部署Solr 最近接手了公司搜索相关的业务,由于其使用的是Solr,故趁着周末自己鼓捣下; 由于业务上使用的是Solr4.2.0版本,因此在学习时,使用相对较老的版本Sol ...

  8. linux tomcat 进程杀掉_Linux下tomcat的配置踩坑

    前言 在配置微信公众号开发的过程,可以参照我的上一篇文章(后来使用Java开发的我表示很鸡肋,虽然配置好了,但是不知道接下来该怎么继续).然后就想起了Windows下Java学习过程中使用过的tomc ...

  9. 使用Eclipse Memory Analyzer分析Tomcat内存溢出

    本文语言逻辑转载:http://tivan.iteye.com/blog/1487855 实际分析来源于自己的实际项目. 在平时开发.测试过程中.甚至是生产环境中,有时会遇到OutOfMemoryEr ...

最新文章

  1. python-函数式编程
  2. Safari的CSS HACK方法
  3. 第四篇:Mysql查询-多表联合查询-及子查询
  4. 【网络安全】红蓝攻防:shellcode的分析
  5. java常用的排序算法的思想以及实现
  6. 关于linux中的 秘钥认证 ,最清晰解读
  7. 静态资源Css基础语法
  8. Github | TensorFlow Extended (TFX) 面向机器学习工具
  9. 【嵌入式Linux】嵌入式Linux驱动开发基础知识之驱动设计的思想:面向对象/分层/分离
  10. xadmin在Django 1.11中的使用及中英文切换
  11. springboot 设置默认访问index.html_【SpringBoot WEB系列】WebFlux静态资源配置与访问
  12. 烂泥:使KVM显示VM的IP地址及主机名
  13. novell.directory.ldap获取邮箱活动目录
  14. 阿里旺旺在线图标,在线状态生成
  15. macOS 访达的隐藏小技巧
  16. 团队内部分享--工作杂谈(读书推荐)
  17. java fx scen,java基础:10.2 Java FX之显示图片
  18. 如何实现网页上的气球提示
  19. python拼音名_Python汉字转换成拼音
  20. [golang]简单文件上传服务

热门文章

  1. 计算机应用基础参考答案,计算机应用基础与参考答案
  2. php过滤数据库就报错,php过滤掉emoji等无法存入MySQL数据库的字符简单示例
  3. mysql给数据库重命令_mysql 重命令数据库
  4. 字节跳动最新开源!沈阳java培训哪个好
  5. Keras【Deep Learning With Python】更优模型探索Keras实现RNN
  6. tclsh 遍历列表_Tcl / Tk 大全
  7. $dbms=mysql_MySQL学习笔记(一)
  8. mysql中设置字符集语句_mysql设置字符集
  9. java 线程状态_JAVA线程漫谈:线程状态与状态转换解析
  10. iar代码优化影响运行速度吗_IAR中优化等级对Kinetis FGPIO执行速度的影响