1、java 解析xml 并导入数据库dom4jjava 解析xml 并导入数据库(dom4j )import java.io.File;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.util.Iterator;import java.util.List;import org.dom4j.Document;import org.dom4j.Element;import org.dom4j.io.SAXReader;public class Test
2、XMLImport /* * param args */public static void main(String args) String sql = insert into T_XML(NUMERO, REPOSICION, NOMBRE, TURNOS) values (?, ?, ?, ?);Connection conn = null;PreparedStatement pstmt = null;try conn = DbUtil.getConnection();pstmt = conn.prepareStatement(sql);Document doc = new SAXRea
3、der().read(new File(D:/share/JavaProjects/drp/test_xmlImport/xml/test01.XML);List itemList = doc.selectNodes(/ACCESOS/item/SOCIO);for (Iterator iter=itemList.iterator(); iter.hasNext();) Element el = (Element)iter.next();String numero = el.elementText(NUMERO);String reposicion = el.elementText(REPOS
4、ICION);String nombre = el.elementText(NOMBRE);List turnosList = el.elements(TURNOS);StringBuffer sbString = new StringBuffer();for (Iterator iter1=turnosList.iterator(); iter1.hasNext();) Element turnosElt = (Element)iter1.next();String lu = turnosElt.elementText(LU);String ma = turnosElt.elementTex
5、t(MA);String mi = turnosElt.elementText(MI);String ju = turnosElt.elementText(JU);String vi = turnosElt.elementText(VI);String sa = turnosElt.elementText(SA);String doo = turnosElt.elementText(DO);sbString.append(lu + , + ma + , + mi + , + ju + , + vi + , + sa + , + doo);pstmt.setString(1, numero);p
6、stmt.setString(2, reposicion);pstmt.setString(3, nombre);pstmt.setString(4, sbString.toString();pstmt.addBatch();pstmt.executeBatch();System.out.println(将XML导入数据库成功!); catch (Exception e) e.printStackTrace(); finally DbUtil.close(pstmt);DbUtil.close(conn); -000450500MOISES MORENOT1T2T3T4T5T6T7000450
7、510RUTH PENAS1S2S3S4S5S6S71、package myxml; import javax.xml.parsers.*; import org.w3c.dom.*; import org.apache.crimson.tree.*; import org.xml.sax.SAXException; import java.io.*; public class DomParserDemo private Document doc; public DomParserDemo() throws Exception DocumentBuilderFactory factory=Do
8、cumentBuilderFactory.newInstance(); DocumentBuilder builder=factory.newDocumentBuilder(); String source= e:/jhb1117/classes/xmldoc/candidate.xml ; doc=builder.parse(source); public void showDocument() /get all NodeList personList=doc.getElementsByTagName(XMLTagDir.NODE_PERSON); / PERSON 也可 ,本文中为数据词典
9、 for(int i=0;i personList.getLength();i+) /节点从0开始 Element person=(Element)personList.item(i); System.out.print(XMLTagDir.NODE_NAME+ : ); System.out.println(getNodeValue(person,XMLTagDir.NODE_NAME); System.out.print(XMLTagDir.NODE_ADDRESS+ : ); System.out.println(getNodeValue(person,XMLTagDir.NODE_AD
10、DRESS); System.out.print(XMLTagDir.NODE_TEL+ : ); System.out.println(getNodeValue(person,XMLTagDir.NODE_TEL); System.out.print(XMLTagDir.NODE_FAX+ : ); System.out.println(getNodeValue(person,XMLTagDir.NODE_FAX); System.out.print(XMLTagDir.NODE_EMAIL+ : ); System.out.println(getNodeValue(person,XMLTa
11、gDir.NODE_EMAIL); System.out.println(); public String getNodeValue(Element person,String nodeName) NodeList nameList=person.getElementsByTagName(nodeName); Element name=(Element)nameList.item(0); Text text=(Text)name.getFirstChild(); String value=text.getNodeValue(); return value; public void saveDo
12、cument(String path) throws IOException FileWriter fw=new FileWriter(path); XmlDocument xmldoc=(XmlDocument)doc; xmldoc.write(fw); fw.close(); public static void main(String args) try DomParserDemo doc=new DomParserDemo(); doc.showDocument(); / String path= e:/houjie/JavaAdvance/dist/xmldoc/parseOut.
13、xml ; String path= e:/jhb1117/classes/xmldoc/jhbparseOut.xml ; doc.saveDocument(path); System.out.print( file saved ); catch(Exception e) e.printStackTrace(); 2、package myxml; import javax.xml.parsers.*; import org.w3c.dom.*; import org.apache.crimson.tree.*; import java.io.*; /* * Title: * Descript
14、ion: * Copyright: Copyright (c) 2002 * Company: * author xxy * version 1.0 */ public class DomCreateDemo private Document doc; public DomCreateDemo() throws Exception DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance(); DocumentBuilder builder=factory.newDocumentBuilder(); doc=builde
15、r.newDocument(); public void createDocument() if(doc=null) return; Element peopleElement=doc.createElement(XMLTagDir.NODE_PEOPLE); for(int i=1;i =3;i+) Element personElement=doc.createElement(XMLTagDir.NODE_PERSON); personElement.setAttribute( PERSONID , E +i); /one person include several tags Text
16、text=null; Element nameElement=doc.createElement(XMLTagDir.NODE_NAME); text=doc.createTextNode( myName +i); nameElement.appendChild(text); personElement.appendChild(nameElement); Element addressElement=doc.createElement(XMLTagDir.NODE_ADDRESS); text=doc.createTextNode( myAddress +i); addressElement.
17、appendChild(text); personElement.appendChild(addressElement); Element telElement=doc.createElement(XMLTagDir.NODE_TEL); text=doc.createTextNode( myTel +i); telElement.appendChild(text); personElement.appendChild(telElement); Element faxElement=doc.createElement(XMLTagDir.NODE_FAX); text=doc.createTe
18、xtNode( myFax +i); faxElement.appendChild(text); personElement.appendChild(faxElement); Element emailElement=doc.createElement(XMLTagDir.NODE_EMAIL); text=doc.createTextNode( myEmail +i); emailElement.appendChild(text); personElement.appendChild(emailElement); peopleElement.appendChild(personElement
19、); doc.appendChild(peopleElement); public void saveDocument(String path) throws IOException FileWriter fout=new FileWriter(path); XmlDocument xmldoc=(XmlDocument)doc; xmldoc.write(fout); fout.close(); public static void main(String args) try DomCreateDemo doc = new DomCreateDemo(); doc.createDocumen
20、t(); System.out.print( doc created ); String path= e:/jhb1117/classes/xmldoc/jhbcreateOut.xml ; / String path= e:/houjie/JavaAdvance/dist/xmldoc/createOut.xml ; doc.saveDocument(path); System.out.print( file saved ); catch(Exception e) e.printStackTrace(); 3、package myxml; import javax.xml.parsers.*
21、; import org.w3c.dom.*; import org.apache.crimson.tree.*; import java.io.*; /* * Title: * Description: * Copyright: Copyright (c) 2002 * Company: * author xxy * version 1.0 */ public class DomCreateDemo private Document doc; public DomCreateDemo() throws Exception DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();