作者简介 【程序编程相关:JDBC链接sql server数据库遇】
作者:贾波 【推荐阅读:Java性能探寻】
简介 【扩展信息:准备SCJP的时候做的一些笔记】
贾波,程序员,您可以通过mosaic@hotmail.com与他联系. jaxp是java api for xml processing的缩写.jaxp api主要的部分在javax.xml.parsers 这个包中.在这个包中,向用户提供了两个最重要的工厂类,saxparserfactory 与documentbuilderfactory,相应地,提供了saxparser 与documentbuilder两个类. sax是由xml-dev定义的;dom是由w3c定义的.让我们来看看这些api库. javax.xml.parsersjaxp api, 定义个sax与dom的一个通用接口 org.w3c.dom定义了dom中的所有组件 org.xml.sax定义了sax的所有api javax.xml.transform定义了xslt api,使用它,你可以将xml转化为一般的可视的页面. sax指一种"事件驱动"的处理方式,他对xml文件连续地一个对象一个对象地操作,由于它的这个特点,所以它可以用于服务器端或者对速度有特殊要求的地方. 相比较而言dom是个使用起来更简单些.他是将所有个xml数据全部读到内存里面,然后使用"树"结构将这些数据组织起来,用户可以对xml的数据进行任意的操作. 至于xslt,我们在这里就不介绍太多,如果感兴趣请参考相应的资料.我们还是先看看sax.sax
sax的框架轮廓
系统是从saxparserfactory产生parser的实例开始的.一个parser中包含了一个saxreader对象,当这个parser调用parse方法的时候,这个reader就调用回调方法已实现这个应用;而这些方法呢?是定义在contenthandler,errorhandler,dtdhandler and entityresolver接口中的. 以下是对sax api库的概述: saxparserfactorysaxparserfactory是一个根据系统属性生成parser实例的一个对象. saxparsersaxparser是一个定义了不同种类的parser()方法的接口.一般而言,你向parser传xml数据后,使用defaulthandler再来处理,系统就会调用一些合适的方法来处理xml文件,这样的一种处理方法是最为简单的. saxreadersaxparser包含了一个saxreader,通常你是不需要关心它的,但是当你要使用saxreader的getxmlreader()方法的时候,你就需要配置他.简言之,saxparser就是一个与sax事件通讯的处理器,这样,你就可以使用自定义的handler. defaulthandlerdefaulthandler 实现了 contenthandler, errorhandler, dtdhandler, 与entityresolver 接口 (当然其中有一些null方法), 如果你感兴趣的话,你可以在你的程序中重载它. contenthandler当读到xml的tag时,就会调用到这个接口中的startdocument, enddocument, startelement, 与 endelement 方法.... 下一页