JAVAWEB系列-1-1

tomcat
XMl
servlet
Httpservlet
Cookie
Session

tomcat的目录结构

bin:主要是存放命令:.sh结尾是linux命令 .bat是windows命令
    环境的配置(JDK路径和tomcat的路径设置)
    修改catalina,可以设置tomcat的内存
conf:存放tomcat的配置文件
server.xml:可以设置端口号,域名,ip默认加载的项目,请求编码
web.xml:设置tomcat支持的文件类型
Context.xml:配置数据源等
Tomcat-users.xml:用来配置管理tomcat等用户与权限
lib:存放tomcat运行需要加载的jar包
logs:存放tomcat运行过程中产生的日志文件,清空不会对运行造成影响
    wins的控制台输出文件在catalina.xxx-xx-xx。log
    linux 的控制输出文件在catalina.out
temp:存放tomcat在运行构成中产生的临时文件,清除不造成影响
webappps:用来存放应用程序
work:存在tomcat在运行时产生的编译文件,清除可以起到清理缓存的作用    

XML

extensible markup language 可扩展标记语言
xml的定义:是一种标记语言,使文件更加的具有结构性
xml的作用:数据交换 作为配置
xml的结构:7个
    文档声明: version(版本) encoding(编码格式) standalone(是不是独立的文件)
    标签/元素:标记的名字 
            区分大小写
            命令不能有空格、冒号
            每一个文件只能有一个根元素
    属性:标签的属性 
        属性必须出现在开始标签
        一个标签可以有多个属性
        必须使用引号,可以使用单双引号    
    注释:<!— —>
    实体字符:就是只能使用转义的字符
    CDATA字数据区:本区域的数据,不会被解析
    处理指令:导入css文件等

xml的解析方式: sax,dom4j ,dom,jdom

sax

simple API for xml 一种事件驱动的xml api,边扫描边解析
优点:解析速度快,占用内存少    
缺点:只能读取xml,不能修改xml ,无法随机访问某个标签,不知道某一个                标签的上下标签,只知道当前标签的名字和属性
适合场所:对于cpu宝贵的设备 只需读取xml而不需要修改
解析的步骤:
    1.得到对于的需要解析的文件
    2.得到SAX解析工厂saxparserfactory
    3.解析工厂生产一个SAX解析器saxparaser
    4.传入输入流(文件)和handlerr给解析器,调用paraser()解析

dom(document object model)

将xml文档以dom的方式包装,通过dom技术,就可以很轻松的获取xml文档中的数据
优点:
    可以对文件进行增删改查
    文档在内存中,便于操作
    有树状结构,便于操作任意数据
缺点:
    程序员使用不方便
    需要加载完整的xml文档来构建层次,所以消耗资源特别大

JDOM

一个利用纯java的技术对xml文档实现解析、生成、序列化等的项目
优点:
    简化了api,使用的是具体的类,而不是借口
    发亮使用java集合类,方便java开发人员的使用
缺点:
    没有较好的灵活性
    性能较差

DOM4J

是java的一个xml API,用来读写xml文件,是JDOM的升级版本
优点:
    大量使用java集合类,方便java开发
    支持xpath
    有更好的性能
缺点:
    大量使用java 接口,API较为复杂

解析文件的选择:

    大文件,不考虑移植 dom4j
    小文件 jdom
    及时处理,不保存 sax

xml的约束

用来约束xml文件,可以使用那一些标签、属性等
分类 :DTD约束、schema约束

DTD约束

文档类型定义 document type definition
作用:用来约束xml文档,确保xml文件的正确性和有效性
使用步骤:
    创建约束文件 后缀为dtd    
    创建xml文件 导入约束文件

schema约束

在dtd的基础上加上了验证数据类型的功能
作用:用来约束xml文档,确保xml文件的正确性和有效性