person.xml
xml预览:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<person>
<p1>
<name>xiaoming</name>
<age>20</age>
</p1>
<p1>
<name>xiaofang</name>
<age>22</age>
</p1>
</person>
执行查询操作
SaxText.java
package it.cast.demo;
import java.io.IOException;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
public class SaxText {
public static void main(String[] args) throws ParserConfigurationException, SAXException, IOException {
// TODO Auto-generated method stub
/**
* 1.创建解析器工厂
* 2.创建解析器
* 3.执行prase方法
*
* 4.自己创建一个类,继承DefaultHanler
* 5.重写类里面的方法
*/
//
SAXParserFactory saxParserFactor = SAXParserFactory.newInstance();
SAXParser saxParser = saxParserFactor.newSAXParser();
saxParser.parse("src/person.xml",new MyDefault1());
}
}
class MyDefault1 extends DefaultHandler{
@Override
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
// TODO Auto-generated method stub
//super.startElement(uri, localName, qName, attributes);
System.out.print("<"+qName+">");
}
@Override
public void characters(char[] ch, int start, int length) throws SAXException {
// TODO Auto-generated method stub
//super.characters(ch, start, length);
System.out.print(new String(ch,start,length));
}
@Override
public void endElement(String uri, String localName, String qName) throws SAXException {
// TODO Auto-generated method stub
//super.endElement(uri, localName, qName);
System.out.print("</"+qName+">");
}
}
查询结果: