📄 addressxml.java
字号:
package com.ntsky.xml.bbs;
import java.io.*;
import java.util.*;
import org.dom4j.*;
import org.dom4j.io.*;
import org.dom4j.dom.*;
import org.apache.log4j.Logger ;
import com.ntsky.xml.XMLPath;
import com.ntsky.xml.XMLReadWrite;
import com.ntsky.xml.bbs.dto.AddressDTO;
/**
* <p>Title: Ntsky OpenSource BBS</p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: WWW.FM880.COM</p>
* @author 姚君林
* @version 1.0
*/
public class AddressXML {
private final static Logger logger = Logger.getLogger(AddressXML.class);
/**
* 写入地址信息
*/
public void ImportDVToXML(Iterator iterator) {
Document document = DocumentHelper.createDocument();
Element root = document.addElement("ntsky");
//具体节点的创建
while (iterator.hasNext()) {
AddressDTO addressDTO = (AddressDTO) iterator.next();
Element address = root.addElement("address");
Element addrIp1 = address.addElement("addrIp1").addText(addressDTO.
getAddrIp1());
//logger.info("设置addrIp1节点的值为 :" + addressDTO.getAddrIp1());
Element addrIp2 = address.addElement("addrIp2").addText(addressDTO.
getAddrIp2());
//logger.info("设置addrIp2节点的值为 :" + addressDTO.getAddrIp2());
String strCountry = addressDTO.getAddrCountry();
if (strCountry == null)
strCountry = "";
Element addrCountry = address.addElement("addrCountry").addText(
strCountry);
//logger.info("设置addrCountry节点的值为 :" + addressDTO.getAddrCountry());
String strCity = addressDTO.getAddrCity();
if (strCity == null)
strCity = "";
Element addrCity = address.addElement("addrCity").addText(strCity);
//logger.info("设置addrCity节点的值为 :" + addressDTO.getAddrCity());
}
try {
XMLReadWrite.getInstance().write(document, XMLPath.NTSKY_IPADDRESS);
}
catch (Exception ex) {
logger.info("往XML中写入信息产生错误 : " + ex.getMessage());
ex.printStackTrace();
}
}
/**
* 将xml信息导入到mysql数据库
*/
public Iterator getXMLToMysql() {
List list = new ArrayList();
try {
Document document = XMLReadWrite.getInstance().read(XMLPath.NTSKY_IPADDRESS);
//枚举所有的节点
System.out.println("开始读取xml文件............");
Element root = document.getRootElement();
//枚举所有的节点
Iterator rs_root = root.elementIterator();
for (; rs_root.hasNext(); ) {
//获取节点
Element element = (Element) rs_root.next();
AddressDTO addressDTO = new AddressDTO();
setNode(addressDTO, element, "addrIp1");
setNode(addressDTO, element, "addrIp2");
setNode(addressDTO, element, "addrCountry");
setNode(addressDTO, element, "addrCity");
list.add(addressDTO);
}
}
catch(Exception e){
logger.info("导出数据发生错误 : " + e.getMessage() );
}
return list.iterator();
}
public synchronized void setNode(AddressDTO addressDTO ,Element element ,String node ){
Iterator rs = element.elementIterator(node);
while (rs.hasNext()) {
Element elt = (Element) rs.next();
if ("addrIp1".equals(node)) {
addressDTO.setAddrIp1(elt.getText());
//logger.info("addrIp1节点的值 :" + elt.getText());
}
if ("addrIp2".equals(node)) {
addressDTO.setAddrIp2(elt.getText());
//logger.info("addrIp2节点的值 :" + elt.getText());
}
if ("addrCountry".equals(node)) {
addressDTO.setAddrCountry(elt.getText());
//logger.info("addrCountry节点的值 :" + elt.getText());
}
if ("addrCity".equals(node)) {
addressDTO.setAddrCity(elt.getText());
//logger.info("addrCity节点的值 :" + elt.getText());
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -