- web.xml and server.xml-03-11
封_绝
web.xml加载顺序:ServletContext→context-param→listener→filter→servletserver.xmlAJP服务器群集热部署:不需要每次做修改都重启服务器,//下//如果该路径下没有项目,则会报错(其余项目依旧会正常加载),如果是使用冷部署则不会报错?idea中的设置如下:image.png
- java servletcontext 获得路径_ServletContext获取项目真实路径
天接云涛
javaservletcontext获得路径
importjavax.servlet.ServletContext;importorg.springframework.web.context.ServletContextAware;/***@authorAdministrator**/publicclassPayUtilimplementsServletContextAware{publicServletContextcontext;publ
- JavaEE学习day-49:Servlet技术综合训练
开源oo柒
一、ServletContext和ServletConfig1.ServletContext对象:解决的问题:Request解决了一次请求内的数据共享问题,session解决了用户不同请求的数据共享问题,ServletContext解决了不同的用户的数据共享。原理:ServletContext对象由服务器进行创建,一个项目只有一个对象。不管在项目的任意位置进行获取得到的都是同一个对象,那么不同用户
- 黑猴子的家:JavaWeb 之 Servlet Listener 监听器
黑猴子的家
1、监听器简介Listener是JavaWeb中三大组件之一。Servlet、Filter、Listener三大组件都有的共同特点,都需要实现一个接口,并在web.xml文件配置。JavaWeb中的监听器的监听对象是谁? ServletContext HttpSession ServletRequest2、监听器分类JavaWeb中的监听器共有三种,共8个监听器 -生命周期
- spring 整合web项目原理
DouDouZH
1、加载spring配置文件image.pngnew对象,功能可以实现,效率低2、实现思想:把加载配置文件和创建对象过程,在服务器启动时完成3、实现原理(1)ServletContext对象(2)监听器(3)具体使用:在服务器启动的时候,为你每个项目创建一个ServletContext对象在ServletContext对象创建的时候,使用监听器可以具体的到ServletContext对象在什么时候
- JavaEE--JavaWeb核⼼之Servlet(笔记)
caicaicai..
JavaEEjavahttpservlettomcat
JavaWeb核⼼之Servlet1.Servlet简介1.1什么是Servlet1.2Servlet快速入门2.Servlet的API(⽣命周期)2.1servlet接口中的3个方法2.2servlet问题3.Servlet的配置3.1Servlet规范3.2路径3.3注解取代xml文件4.ServletContext对象4.1什么是ServletContext对象4.2ServletConte
- JavaWeb学习——ServletConfig类和ServletContext 类
柿子镭
Javaweb学习ServletConfigServletContextServlet
目录一、ServletConfig类二、.ServletContext类一、ServletConfig类ServletConfig类从类名上来看,就是servlet程序的配置信息类。Servlet程序和ServletConfig对象都是由Tomcat负责创建的,我们负责使用。Servlet程序默认是第一次访问的时候创建,ServletConfig是每个Servlet程序创建时,就创建一个对应的Se
- #学习笔记#ServletConfig类和ServletContext类到底是啥?
一段对白
javaspringjs
ServletConfig类ServletConfig类是Servlet程序的配置信息类1.可以获取Servlet的别名(servlet-name的值)2.获取初始化参数init-param3.获取ServletContext对象ServletContext类1.ServletContext类是一个接口,表示Servlet上下文对象2.一个Web工程,只有一个ServletContext实例3.S
- java config 类_Java ServletConfig类和ServletContext类到底是啥?
秀云南
javaconfig类
#ServletConfig类#ServletConfig类是Servlet程序的配置信息类>1.可以获取Servlet的别名(servlet-name的值)>2.获取初始化参数init-param>3.获取ServletContext对象#ServletContext类#>1.ServletContext类是一个接口,表示Servlet上下文对象>2.一个Web工程,只有一个ServletCon
- ServletConfig类和ServletContext类
码见愁
tomcatjava开发语言
1.ServletConfig类1什么是ServletConfig?ServletConfig类从类名上来看,就知道是Servlet程序的配置信息类。Servlet程序默认是第一次访问的时候创建,ServletConfig是每个Servlet程序创建时,就创建一个对应的ServletConfig对象。2.ServletConfig类的三大作用?1、可以获取Servlet程序的别名servlet-n
- 24种设计模式之单例模式(饿汉式、懒汉式)
inexaustible
Java面试及基础概念java
一、单例模式单例模式(SingletonPattern)是指确保一个类在任何情况下都绝对只有一个实例,并提供一个全局访问点。单例模式是创建型模式。单例模式在现实生活中应用也非常广泛,例如,总统,班主任等。J2EE标准中的ServletContext、ServletContextConfig等、Spring框架应用中的。特点:构造方法私有,提供一个全局访问点。实现方式:有很多,1.饿汉式2.懒汉式3
- Servlet详解(四): Servlet3.0新特性详解
Feathers .
#Servlet&JSPservletjavatomcat
Servlet2.5是JavaEE5.0规范,最低运行环境为JDK5.0以及Tomcat5.0。而Servlet3.0是JavaEE6.0规范,最低环境为JDK6.0以及Tomcat7.0。Servlet3.0的新特性主要分为以下几个点:基于注解配置三大组件文件上传API的优化异步处理组件可插性动态注册三大组件(ServletContext)SPI-ServletContainerInitiali
- Java EE面试题解析(中)
小爱聊IT
Javajava-eejava面试
11、Servlet、Filter、Listener的启动顺序?【重点】启动的顺序为:Listener->Filter->Servlet;执行的顺序不会因为三个标签在配置文件中的先后顺序而改变。监听器类型:Servlet2.4规范定义,按监听的对象划分:用于监听应用程序环境对象(ServletContext)的事件监听器用于监听用户会话对象(HttpSession)的事件监听器用于监听请求消息对象
- Servlet基础之API
Gambler_Tu
servletservlet
文章目录ServletAPI1.概述2.相关对象概述3.Servlet接口4.GenericServlet抽象类5.HTTPServlet类6.ServletRequest和HTTPServletRequest7.HttpServletRequest8.ServletResponse和HTTPServletResponse9.ServletConfig和ServletContext10.部署描述符
- ServletResponse接口
RZer
hivehadoop数据仓库
ServletResponse接口ServletContext接口向servlet提供关于其运行环境的信息。上下文也称为Servlet上下文或Web上下文,由Web容器创建,用作ServletContext接口的对象。此对象表示Web应用程序在其执行的上下文。Web容器为所部署的每个Web应用程序创建一个ServletContext对象。您可以使用此ServletContext对象查找Web应用程
- SpringMVC-文件上传与下载
ccb_
SSMtomcatintellij-ideajava
文章目录文件上传与下载1.下载2.上传文件上传与下载1.下载@RequestMapping("/testDown")publicResponseEntitytestResponseEntity(HttpSessionsession)throwsIOException{//获取servletcontext对象ServletContextservletcontext=session.getServle
- 一个web项目web.xml的配置中<context-param>配置作用
LQX_XL
前端xmlspring
web.xml的配置中配置作用1.启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置文件web.xml.读两个节点:和2.紧接着,容器创建一个ServletContext(上下文),这个WEB项目所有部分都将共享这个上下文.3.容器将转化为键值对,并交给ServletContext.4.容器创建中的类实例,即创建监听.5.在监听中会有contextInitialized(Servle
- 6. SpringMVC-域对象共享数据
CAFEBABE 34
#spring-mvc服务器java运维
域对象共享数据零、四大域对象1.PageContext域2.Request域3.HttpSession域4.ServletContext一、创建项目二、向request域对象共享数据1.使用ServletAPI向request域对象共享数据2.使用ModelAndView向request域对象共享数据3.使用Model向request域对象共享数据4.使用map向request域对象共享数据5.使
- servletContext域对象
全满
作用范围在整个web应用中均有效保存数据实例1://得到域对象ServletContextcontext=this.ServletContext();//将数据保存到域对象中context.setAttribute("name","persist");实例2://得到域对象ServletContextcontext=this.ServletContext();//将数据保存到域对象中context
- SpringBoot 属性配置解析
Box_clf
SpringBoot源码解析springboot后端java属性配置解析
属性配置介绍spring官方提供的17中属性配置的方式Devtools全局配置测试环境@TestPropertySource注解测试环境properties属性命令行参数SPRING_APPLICATION_JSON属性ServletConfig初始化参数ServletContext初始化参数JNDI属性JAVA系统属性操作系统环境变量RandomValuePropertySource随机值属性j
- JavaEE中的监听器的作用和工作原理
_Matthew
#Java的零星知识java-eejava
在JavaEE(JavaPlatform,EnterpriseEdition)中,监听器(Listener)是一种重要的组件,用于监听和响应Web应用程序中的事件。监听器的作用是在特定的事件发生时执行一些自定义的逻辑。常见的监听器包括ServletContext监听器、HttpSession监听器和ServletRequest监听器。以下是监听器的作用和工作原理:1.监听器的作用:响应事件:监听器
- javaweb-servlet获取给定文件在服务器上的绝对路径的方法
_鈊瀡妳變
1.通过ServletContext获取在tomcat5,6,7版本中我们可以通过ServletContext来获取给定文件在服务器上的绝对路径。ServletContextcontext=getServletContext();Stringpath=context.getRealPath("文件在WebContent下的路径");这种方式能在tomcat5,6,7版本下获取到文件在服务器上的绝对
- HttpServletRequest、HttpServletResponse、ServletContext、ServletConfig详解
xdpcxq1029
springboot
HttpServletRequestHttpServletRequest对象:主要作用是用来接收客户端发送过来的请求信息,例如:请求的参数,发送的头信息等都属于客户端发来的信息,service()方法中形参接收的是HttpServletRequest接口的实例化对象,表示该对象主要应用在HTTP协议上,该对象是由Tomcat封装好传递过来。HttpServletRequest是ServletReq
- Servlet系列:(HttpServletRequest、HttpServletResponse、ServletContext、ServletConfig)详解
Code技术分享
servletjava
HttpServletRequestHttpServletRequest对象:主要作用是用来接收客户端发送过来的请求信息,例如:请求的参数,发送的头信息等都属于客户端发来的信息,service()方法中形参接收的是HttpServletRequest接口的实例化对象,表示该对象主要应用在HTTP协议上,该对象是由Tomcat封装好传递过来。HttpServletRequest是ServletReq
- ApplicationContext和ServletContext
Top`
springjava
importorg.springframework.beans.BeansException;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.boot.context.event.ApplicationStartedEvent;importorg.springframewo
- servlet的两种配置方式、servlet 的生命周期、ServletConfig接口、ServletContext接口
铲屎官白茶
javawebjava前端开发语言
servlet的两种配置方式若想让Servlet正确地运行在服务器中并处理请求信息,必须进行适当的配置,关于Servlet的配置主要有两种方式,分别是通过Web应用的配置文件web.xml来完成配置和使用@WebServlet注解的方式完成。1.xml方式HelloServletweb.controller.HelloServletHelloServlet/servlet/HelloServlet
- Java中的Servlet你了解吗?
欧克小奥
有趣的问题javaservlet
☆*o(≧▽≦)o*☆嗨~我是小奥个人博客:小奥的博客CSDN:个人CSDNGithub:传送门面经分享(牛客主页):传送门文章作者技术和水平有限,如果文中出现错误,希望大家多多指正!如果觉得内容还不错,欢迎点赞收藏关注哟!❤️文章目录Servlet详解1.Servlet接口(1)ServletConfig(2)ServletContext(3)使用2.GenericServlet3.HttpSe
- springMVC 文件上传和下载
仰望星空的快乐
spring-mvcjava
文件的下载获得服务器文件的根路径StringrealPath=servletContext.getRealPath("/");realPath:E:\SpringMVC\Springmvc-project1\Springmvc-demo2\target\Springmvc-demo2-1.0-SNAPSHOT\获得根路径之后在跟路径后面加上我想创建的层次名和文件名,可以直接这样写:Stringre
- SpringBoot报错:java.lang.NoSuchMethodError: javax.servlet.ServletContext.getVirtualServerName()Ljava/l
侧身左睡
SpringBootJavaJava学习javaspringboot
自己电脑上一直用IDEA配置的Tomcat跑的SSM项目,今天同事让我跑一下他的SpringBoot项目,就把整个代码包拷给我,使用IDEA导出后却跑步起来,启动报错,一样的代码怎么就跑步起来呢。。。后来才发现SpringBoot使用内置Tomcat,但是会缺少servlet-api.jar,所以导致getVirtualServerName()方法找不到,一直报错。报错信息如下:2021-02-0
- springboot项目:NoSuchMethodError: javax.servlet.ServletContext.getVirtualServerName()Ljava/lang/String
站立在风口的猪
java.util.concurrent.ExecutionException:org.apache.catalina.LifecycleException:Failedtostartcomponent[StandardEngine[Tomcat].StandardHost[localhost].TomcatEmbeddedContext[]]atjava.util.concurrent.Futu
- 桌面上有多个球在同时运动,怎么实现球之间不交叉,即碰撞?
换个号韩国红果果
html小球碰撞
稍微想了一下,然后解决了很多bug,最后终于把它实现了。其实原理很简单。在每改变一个小球的x y坐标后,遍历整个在dom树中的其他小球,看一下它们与当前小球的距离是否小于球半径的两倍?若小于说明下一次绘制该小球(设为a)前要把他的方向变为原来相反方向(与a要碰撞的小球设为b),即假如当前小球的距离小于球半径的两倍的话,马上改变当前小球方向。那么下一次绘制也是先绘制b,再绘制a,由于a的方向已经改变
- 《高性能HTML5》读后整理的Web性能优化内容
白糖_
html5
读后感
先说说《高性能HTML5》这本书的读后感吧,个人觉得这本书前两章跟书的标题完全搭不上关系,或者说只能算是讲解了“高性能”这三个字,HTML5完全不见踪影。个人觉得作者应该首先把HTML5的大菜拿出来讲一讲,再去分析性能优化的内容,这样才会有吸引力。因为只是在线试读,没有机会看后面的内容,所以不胡乱评价了。
- [JShop]Spring MVC的RequestContextHolder使用误区
dinguangx
jeeshop商城系统jshop电商系统
在spring mvc中,为了随时都能取到当前请求的request对象,可以通过RequestContextHolder的静态方法getRequestAttributes()获取Request相关的变量,如request, response等。 在jshop中,对RequestContextHolder的
- 算法之时间复杂度
周凡杨
java算法时间复杂度效率
在
计算机科学 中,
算法 的时间复杂度是一个
函数 ,它定量描述了该算法的运行时间。这是一个关于代表算法输入值的
字符串 的长度的函数。时间复杂度常用
大O符号 表述,不包括这个函数的低阶项和首项系数。使用这种方式时,时间复杂度可被称为是
渐近 的,它考察当输入值大小趋近无穷时的情况。
这样用大写O()来体现算法时间复杂度的记法,
- Java事务处理
g21121
java
一、什么是Java事务 通常的观念认为,事务仅与数据库相关。 事务必须服从ISO/IEC所制定的ACID原则。ACID是原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性(durability)的缩写。事务的原子性表示事务执行过程中的任何失败都将导致事务所做的任何修改失效。一致性表示当事务执行失败时,所有被该事务影响的数据都应该恢复到事务执行前的状
- Linux awk命令详解
510888780
linux
一. AWK 说明
awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。
awk的处理文本和数据的方式:它逐行扫描文件,从第一行到
- android permission
布衣凌宇
Permission
<uses-permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES" ></uses-permission>允许读写访问"properties"表在checkin数据库中,改值可以修改上传
<uses-permission android:na
- Oracle和谷歌Java Android官司将推迟
aijuans
javaoracle
北京时间 10 月 7 日,据国外媒体报道,Oracle 和谷歌之间一场等待已久的官司可能会推迟至 10 月 17 日以后进行,这场官司的内容是 Android 操作系统所谓的 Java 专利权之争。本案法官 William Alsup 称根据专利权专家 Florian Mueller 的预测,谷歌 Oracle 案很可能会被推迟。 该案中的第二波辩护被安排在 10 月 17 日出庭,从目前看来
- linux shell 常用命令
antlove
linuxshellcommand
grep [options] [regex] [files]
/var/root # grep -n "o" *
hello.c:1:/* This C source can be compiled with:
- Java解析XML配置数据库连接(DOM技术连接 SAX技术连接)
百合不是茶
sax技术Java解析xml文档dom技术XML配置数据库连接
XML配置数据库文件的连接其实是个很简单的问题,为什么到现在才写出来主要是昨天在网上看了别人写的,然后一直陷入其中,最后发现不能自拔 所以今天决定自己完成 ,,,,现将代码与思路贴出来供大家一起学习
XML配置数据库的连接主要技术点的博客;
JDBC编程 : JDBC连接数据库
DOM解析XML: DOM解析XML文件
SA
- underscore.js 学习(二)
bijian1013
JavaScriptunderscore
Array Functions 所有数组函数对参数对象一样适用。1.first _.first(array, [n]) 别名: head, take 返回array的第一个元素,设置了参数n,就
- plSql介绍
bijian1013
oracle数据库plsql
/*
* PL/SQL 程序设计学习笔记
* 学习plSql介绍.pdf
* 时间:2010-10-05
*/
--创建DEPT表
create table DEPT
(
DEPTNO NUMBER(10),
DNAME NVARCHAR2(255),
LOC NVARCHAR2(255)
)
delete dept;
select
- 【Nginx一】Nginx安装与总体介绍
bit1129
nginx
启动、停止、重新加载Nginx
nginx 启动Nginx服务器,不需要任何参数u
nginx -s stop 快速(强制)关系Nginx服务器
nginx -s quit 优雅的关闭Nginx服务器
nginx -s reload 重新加载Nginx服务器的配置文件
nginx -s reopen 重新打开Nginx日志文件
- spring mvc开发中浏览器兼容的奇怪问题
bitray
jqueryAjaxspringMVC浏览器上传文件
最近个人开发一个小的OA项目,属于复习阶段.使用的技术主要是spring mvc作为前端框架,mybatis作为数据库持久化技术.前台使用jquery和一些jquery的插件.
在开发到中间阶段时候发现自己好像忽略了一个小问题,整个项目一直在firefox下测试,没有在IE下测试,不确定是否会出现兼容问题.由于jquer
- Lua的io库函数列表
ronin47
lua io
1、io表调用方式:使用io表,io.open将返回指定文件的描述,并且所有的操作将围绕这个文件描述
io表同样提供三种预定义的文件描述io.stdin,io.stdout,io.stderr
2、文件句柄直接调用方式,即使用file:XXX()函数方式进行操作,其中file为io.open()返回的文件句柄
多数I/O函数调用失败时返回nil加错误信息,有些函数成功时返回nil
- java-26-左旋转字符串
bylijinnan
java
public class LeftRotateString {
/**
* Q 26 左旋转字符串
* 题目:定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部。
* 如把字符串abcdef左旋转2位得到字符串cdefab。
* 请实现字符串左旋转的函数。要求时间对长度为n的字符串操作的复杂度为O(n),辅助内存为O(1)。
*/
pu
- 《vi中的替换艺术》-linux命令五分钟系列之十一
cfyme
linux命令
vi方面的内容不知道分类到哪里好,就放到《Linux命令五分钟系列》里吧!
今天编程,关于栈的一个小例子,其间我需要把”S.”替换为”S->”(替换不包括双引号)。
其实这个不难,不过我觉得应该总结一下vi里的替换技术了,以备以后查阅。
1
所有替换方案都要在冒号“:”状态下书写。
2
如果想将abc替换为xyz,那么就这样
:s/abc/xyz/
不过要特别
- [轨道与计算]新的并行计算架构
comsci
并行计算
我在进行流程引擎循环反馈试验的过程中,发现一个有趣的事情。。。如果我们在流程图的每个节点中嵌入一个双向循环代码段,而整个流程中又充满着很多并行路由,每个并行路由中又包含着一些并行节点,那么当整个流程图开始循环反馈过程的时候,这个流程图的运行过程是否变成一个并行计算的架构呢?
- 重复执行某段代码
dai_lm
android
用handler就可以了
private Handler handler = new Handler();
private Runnable runnable = new Runnable() {
public void run() {
update();
handler.postDelayed(this, 5000);
}
};
开始计时
h
- Java实现堆栈(list实现)
datageek
数据结构——堆栈
public interface IStack<T> {
//元素出栈,并返回出栈元素
public T pop();
//元素入栈
public void push(T element);
//获取栈顶元素
public T peek();
//判断栈是否为空
public boolean isEmpty
- 四大备份MySql数据库方法及可能遇到的问题
dcj3sjt126com
DBbackup
一:通过备份王等软件进行备份前台进不去?
用备份王等软件进行备份是大多老站长的选择,这种方法方便快捷,只要上传备份软件到空间一步步操作就可以,但是许多刚接触备份王软件的客用户来说还原后会出现一个问题:因为新老空间数据库用户名和密码不统一,网站文件打包过来后因没有修改连接文件,还原数据库是好了,可是前台会提示数据库连接错误,网站从而出现打不开的情况。
解决方法:学会修改网站配置文件,大多是由co
- github做webhooks:[1]钩子触发是否成功测试
dcj3sjt126com
githubgitwebhook
转自: http://jingyan.baidu.com/article/5d6edee228c88899ebdeec47.html
github和svn一样有钩子的功能,而且更加强大。例如我做的是最常见的push操作触发的钩子操作,则每次更新之后的钩子操作记录都会在github的控制板可以看到!
工具/原料
github
方法/步骤
- ">的作用" target="_blank">JSP中的作用
蕃薯耀
JSP中<base href="<%=basePath%>">的作用
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
- linux下SAMBA服务安装与配置
hanqunfeng
linux
局域网使用的文件共享服务。
一.安装包:
rpm -qa | grep samba
samba-3.6.9-151.el6.x86_64
samba-common-3.6.9-151.el6.x86_64
samba-winbind-3.6.9-151.el6.x86_64
samba-client-3.6.9-151.el6.x86_64
samba-winbind-clients
- guava cache
IXHONG
cache
缓存,在我们日常开发中是必不可少的一种解决性能问题的方法。简单的说,cache 就是为了提升系统性能而开辟的一块内存空间。
缓存的主要作用是暂时在内存中保存业务系统的数据处理结果,并且等待下次访问使用。在日常开发的很多场合,由于受限于硬盘IO的性能或者我们自身业务系统的数据处理和获取可能非常费时,当我们发现我们的系统这个数据请求量很大的时候,频繁的IO和频繁的逻辑处理会导致硬盘和CPU资源的
- Query的开始--全局变量,noconflict和兼容各种js的初始化方法
kvhur
JavaScriptjquerycss
这个是整个jQuery代码的开始,里面包含了对不同环境的js进行的处理,例如普通环境,Nodejs,和requiredJs的处理方法。 还有jQuery生成$, jQuery全局变量的代码和noConflict代码详解 完整资源:
http://www.gbtags.com/gb/share/5640.htm jQuery 源码:
(
- 美国人的福利和中国人的储蓄
nannan408
今天看了篇文章,震动很大,说的是美国的福利。
美国医院的无偿入院真的是个好措施。小小的改善,对于社会是大大的信心。小孩,税费等,政府不收反补,真的体现了人文主义。
美国这么高的社会保障会不会使人变懒?答案是否定的。正因为政府解决了后顾之忧,人们才得以倾尽精力去做一些有创造力,更造福社会的事情,这竟成了美国社会思想、人
- N阶行列式计算(JAVA)
qiuwanchi
N阶行列式计算
package gaodai;
import java.util.List;
/**
* N阶行列式计算
* @author 邱万迟
*
*/
public class DeterminantCalculation {
public DeterminantCalculation(List<List<Double>> determina
- C语言算法之打渔晒网问题
qiufeihu
c算法
如果一个渔夫从2011年1月1日开始每三天打一次渔,两天晒一次网,编程实现当输入2011年1月1日以后任意一天,输出该渔夫是在打渔还是在晒网。
代码如下:
#include <stdio.h>
int leap(int a) /*自定义函数leap()用来指定输入的年份是否为闰年*/
{
if((a%4 == 0 && a%100 != 0
- XML中DOCTYPE字段的解析
wyzuomumu
xml
DTD声明始终以!DOCTYPE开头,空一格后跟着文档根元素的名称,如果是内部DTD,则再空一格出现[],在中括号中是文档类型定义的内容. 而对于外部DTD,则又分为私有DTD与公共DTD,私有DTD使用SYSTEM表示,接着是外部DTD的URL. 而公共DTD则使用PUBLIC,接着是DTD公共名称,接着是DTD的URL.
私有DTD
<!DOCTYPErootSYST