SAX½âÎöXML(Ô´´úÂ룩
package book.xml;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import java.util.Stack;
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 SaxXML {
public static List readXML(String fileName)throws Exception{
SAXParserFactory spf=SAXParserFactory.newInstance();//´´½¨SAX½âÎöÆ÷¹¤³§¶ÔÏó
SAXParser saxParser=spf.newSAXParser();//ʹÓýâÎöÆ÷¹¤³§´´½¨½âÎöÆ÷ʵÀý
//´´½¨SAX½âÎöÆ÷ҪʹÓõÄʼþ¼àÌýÆ÷¶ÔÏó
StudentSAXHandler handler=new StudentSAXHandler();
saxParser.parse(new File(fileName),handler);//¿ªÊ¼½âÎöÎļþ
return handler.getResult();//»ñÈ¡½á¹û
}
public static void main(String[] args) {
String filename="student.xml";
List studentBeans=null;
try{
studentBeans=SaxXML.readXML(filename);
}catch(Exception e){
System.err.println(e.getMessage());
}
if(studentBeans!=null){
System.out.println("½âÎöstudent.xmlÎĵµµÃµ½µÄѧÉúÐÅÏ¢£º");
for(int i=0;i<studentBeans.size();i++){
System.out.println(studentBeans.get(i).toString());
}
}
}
/**
* SAXµÄʼþ¼àÌýÆ÷£¬µ±´¦ÀíÌØ¶¨µÄXMLÎļþµÄʱºò£¬¾ÍÐèҪΪ
* Æä´´½¨Ò»¸ö¼Ì³ÐDefaultHandlerµÄÀàÀ´´¦ÀíÌØ¶¨µÄʼþ
* ¿ÉÒÔ˵£¬Õâʵ¼ÊÉϾÍÊÇSAX´¦ÀíXMLÎļþµÄºËÐÄ
* @author wuhailin
*
*/
static class StudentSAXHandler extends DefaultHandler{
//±£´æÒѾ¶Áµ½¹ýµ«»¹Ã»ÓйرյıêÇ©
Stack tagsStack=new Stack();
List studentBeans=new ArrayList();
StudentBean bean=null;
/**µ±Óöµ½ÎĵµµÄ¿ªÍ·µÄʱºò£¬µ÷ÓÃÕâ¸ö·½·¨£¬¿ÉÒÔÔÚÆäÖÐ×öһЩԤ´¦ÀíµÄ¹¤×÷*/
public void startDocument()throws SAXException{
System.out.println("--------Parse begin---------");
}
Ïà¹ØÎĵµ£º
1£©XmlÎĵµÊ¾Àý£¨xmlsample.xml£©£º
Code
<?xml version="1.0" encoding="iso-8859-1" ?>
<music>
<song title="Oh,girl">
<artist>The Chi-lites</artist>
<genre>Soul</genre>
&nb ......
3£©¶ÁÈ¡¡¢²éÕÒ
µ±ÄãÊÖÍ·ÓÐÒ»¸öxmlÎļþºó£¬¿ÉÒÔʹÓÃXmlDocument.Load()·½·¨½«Æä¼ÓÔØ½øÀ´ÒԱ㴦Àí£¬ËùÒÔ“¶ÁÈ¡”ûÓÐʲô¿É˵µÄ¡£¶ø“²éÕÒ”²Ù×÷ÍùÍùÉæ¼°XPath£¬ÕâÀïÖ»ÊÇÎÒÈÏΪµÄ±È½Ï³£Óõ½µÄ²éÕÒ²Ù×÷£¬XPathÕâÍæÒâʵÔÚÊǺÜÇ¿´óºÜ±©Á¦¡£
»ØÍ·¿´Ê¾ÀýÎĵµxmlsample.xml£¬ÎÒÃÇ¿ÉÄÜÓöµ½ÕâÑùµÄÐèÇó£ ......
Caused by: java.sql.SQLException: ORA-00918: column ambiguously defined
Caused by: com.ibatis.common.jdbc.exception.NestedSQLException:
--- The error occurred in com/ibatis/jpetstore/persistence/sqlmapdao/sql/Item.xml.
--- The error occurred while applying a parameter map.&nbs ......
/* Author: ÑîÓî yangyu@sina.cn */
/*
Ó÷¨Ê¾Àý£º
$cls_xml = new cls_xml();
if ($array){
$cls_xml->array2xml($array);
echo $cls_xml->getXml();
}else{
echo '';
}
*/
class cls_xml{
var $xml;
&nbs ......