把我们写SQL的mapper.xml文件夹路径配置在Path中,保存。
/解析方法public void addInitData() {
try {
//解析init.xml文档
Document doc = new SAXReader().read(Thread.currentThread().getContextClassLoader().getResourceAsStream(init.xml))
//得到根元素
Element root = doc.getRootElement()
//得到包名
String pkg = root.valueOf("@package")
//得到根元素下的entity集合
List<Element>entities = root.selectNodes("entity")
for(Iterator<Element>iter = entities.iterator() iter.hasNext()){
Element e = iter.next()
addEntity(e,pkg,null,null)
}
} catch (Exception e) {
e.printStackTrace()
}
}
不说废话直接上代码,下面是要读取的xml文件:
<?xml version="1.0" encoding="UTF-8"?><PERSON>
<NAME>a1</NAME>
<ADDRESS>b1</ADDRESS>
<TEL>c1</TEL>
<FAX>d1</FAX>
<EMAIL>e1</EMAIL>
</PERSON>
下面是读取xml文件的java代码,在数据库中建一张和xml文件字段对应的表,将读取的数据插入到表中。如果数据插入不会,欢迎继续追问:
import java.io.Fileimport javax.xml.parsers.DocumentBuilder
import javax.xml.parsers.DocumentBuilderFactory
import org.w3c.dom.Document
import org.w3c.dom.Element
import org.w3c.dom.NodeList
public class Test {
public static void main(String[] args) throws Exception{
System.out.println("22")
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance()
DocumentBuilder db = dbf.newDocumentBuilder()
Document document = db.parse(new File("candidate.xml"))
NodeList list = document.getElementsByTagName("PERSON")
for(int i = 0 i < list.getLength() i++)
{
Element element = (Element)list.item(i)
String content = element.getElementsByTagName("NAME").item(0).getFirstChild().getNodeValue()
content = element.getElementsByTagName("ADDRESS").item(0).getFirstChild().getNodeValue()
content = element.getElementsByTagName("TEL").item(0).getFirstChild().getNodeValue()
content = element.getElementsByTagName("FAX").item(0).getFirstChild().getNodeValue()
content = element.getElementsByTagName("EMAIL").item(0).getFirstChild().getNodeValue()
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)