您的位置:首页 > 编程语言 > Java开发

JavaEE_SAX

2016-06-23 15:15 288 查看
There are knowledge about SAX with parser JavaEE.

1.SAX (Simple API for Xml)   Its a greate parser about JavaEE and XML.

2. SupInterface :      org.xml.sax

     !1. ContentHandler :   this is etends SAX packge

             
void startDocument()
void endDocument()
void startElement(String uri, String localName, String qName, Attributes atts)
void endElement(String uri, String localName, String qName)
void characters(char[ ] ch, int start, int length)



   !2.DTDHandler:      this is in SAX packge too ,  about all DTD in xml


          

             
void startDocumevoid notationDecl(String name, String publicId, String systemId) nt()
void unparsedEntityDecl(String name, String publicId, String systemId, String notationName)


       

  !3.EntityResolver:  body serach of xml

    

          
public InputSource resolveEntity(String publicId, String systemId)


 !4.ErrorHandler : hander exception when happend problem.

        

      
void error(SAXParseException exception)
void fatalError(SAXParseException exception)
void warning(SAXParseException exception)


 

 !5. DefaultHandler : its implements other four interface , so i support this interface to use in project.

          
import org.xml.sax.*;
import org.xml.sax.helpers.DefaultHandler;
public class TestDefaultHandler extends DefaultHandler{
public void startDocument() throws SAXException{
System.out.println(""); }
public void endDocument() throws SAXException{
System.out.println("解析完成!"); }
public void startElement(String uri, String localName, String qName,
Attributes atts) throws SAXException {
System.out.println(":"+qName);
}
public void endElement(String uri, String localName, String qName)
throws SAXException{
System.out.println("对"+qName+"的");
}
}
   !6.XMLReader : its the must be interface in SAX2 in xml java.

                  
<span style="font-size:14px;">        import org.xml.sax.*;
import org.xml.sax.helpers.*;
public class TestXMLReader{
public TestXMLReader(){
try{
XMLReader reader = XMLReaderFactory.createXMLReader(
"org.apache.xerces.parsers.SAXParser");
System.out.println("Success");
//MyContentHandler implements ContentHandleri interface 的类
reader.setContentHandler(new MyContentHandler());
reader.setDTDHandler(new MyDTDHandler());
//对test.xml
reader.parse("test.xml");
System.out.println("");
}catch(SAXException e){e.printStackTrace();}</span>
}
}


NOTE  :

                1. create XMLReader from default system

                   
XMLReader reader = XMLReaderFactory.createXMLReader();
                2.create XMl  Reader

                 

                 XMLReader reader = XMLReaderFactory.createXMLReader(
                 "org.apache.xerces.parsers.SAXParser");
                3.create  SAX Parser

               

                 SAXParserFactory spFactory = SAXParserFactory.newInstance();
                 SAXParser sParser = spFactory.newSAXParser();

      Iparhan_Java  2016-6-23  GoodLuck!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: