zoukankan      html  css  js  c++  java
  • XML文档形式&JAVA抽象类和接口的区别&拦截器过滤器区别

    XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式? 
    a: 两种形式 dtd schema
    b: 本质区别:schema本身是xml的,可以被XML解析器解析(这也是从DTD上发展schema的根本目的)
    c:有DOM,SAX,STAX等
    DOM:处理大型文件时其性能下降的非常厉害。这个问题是由DOM的树结构所造成的,这种结构占用的内存较多,而且DOM必须在解析文件之前把整个文档装入内存,适合对XML的随机访问
    SAX:不现于DOM,SAX是事件驱动型的XML解析方式。它顺序读取XML文件,不需要一次全部装载整个文件。当遇到像文件开头,文档结束,或者标签开头与标签结束时,它会触发一个事件,用户通过在其回调事件中写入处理代码来处理XML文件,适合对XML的顺序访问 
    STAX:Streaming API for XML (StAX)

    xml文档有两种定义方法:
    dtd:数据类型定义(data type definition),用以描述XML文档的文档结构,是早期的XML文档定义形式。
    schema:其本身是基于XML语言编写的,在类型和语法上的限定能力比dtd强,处理也比较方便,因为此正逐渐代替dtd成为新的模式定义语言。

    抽象类和接口有什么区别

    1.abstract class 在 Java 语言中表示的是一种继承关系,一个类只能使用一次继承关系。但是,一个类却可以实现多个interface。

    2.在abstract class 中可以有自己的数据成员,也可以有非abstarct的成员方法,而在interface中,只能够有静态的不能被修改的数据成员(也就是必须是static final的,不过在 interface中一般不定义数据成员),所有的成员方法都是abstract的。

    3.abstract class和interface所反映出的设计理念不同。其实abstract class表示的是"is-a"关系,interface表示的是"like-a"关系。

    4.实现抽象类和接口的类必须实现其中的所有方法。抽象类中可以有非抽象方法。接口中则不能有实现方法。

    5.接口中定义的变量默认是public static final 型,且必须给其初值,所以实现类中不能重新定义,也不能改变其值。

    6.抽象类中的变量默认是 friendly 型,其值可以在子类中重新定义,也可以重新赋值。

    7.接口中的方法默认都是 public,abstract 类型的。

     

    过滤器和拦截器的区别

    1、 拦截器是基于java的反射机制的,而过滤器是基于函数回调

    2、 过滤器依赖于servlet容器,而拦截器不依赖于servlet容器

    3、 拦截器只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用

    4、 拦截器可以访问action上下文、值栈里的对象,而过滤器不能

    5、 在action的 生命周期中,拦截器可以多次被调用,而过滤器只在容器初始化时调用一次

    拦 截器: 是在面向切面编程的就是在你的service或者一个方法,前调用一个方法,或者在方法后调用一个方法比如动态代理 就是拦截器的简单实现,在你调用方法前打印出字符串(或者做其它业务逻辑的操作),也可以在你调用方法后打印出字符串,甚至在你抛出异常的时候做业务逻辑 的操作。

    过 滤器:是在java web中, 你传入的request,response提前过滤掉一些信息,或者提前设置一些参数,然后再传入servlet或 者struts的action进 行业务逻辑,比如过滤掉非法url(不是login.do的地址请求, 如果用户没有登陆都过滤掉),或者在传入servlet或者struts的action前 统一设置字符集,或者去除掉一些非法字符.

  • 相关阅读:
    一步完成 MySQL 向 Redis 迁移
    php7性能、兼容性和稳定性探讨
    【高并发简单解决方案】redis缓存队列+mysql 批量入库+php离线整合
    Nginx的Rewrite正则表达式,匹配非某单词
    ajax下载,前端js下载(转)
    根据马甲、应用商店、统计每天的注册量,要求可以根据选择马甲和app,马甲和appstrore和user_login不同表问题
    别名的使用注意,""真坑。
    策略模式Strategy
    关于poi操作excel我使用的一些修饰操作
    java的代理(编程思想)
  • 原文地址:https://www.cnblogs.com/doit8791/p/3502445.html
Copyright © 2011-2022 走看看