第一步下载jar包
crimson.jar
第二步()
注意sql 语句 以及生成位置 本单元测试生成在src下
package com.test.xml;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.apache.crimson.tree.XmlDocument;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.ParserConfigurationExcep tion;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.FileNotFoundException;
import java.io.IOException;
import org.xml.sax.SAXException;
public class schemeXml
{
static Connection conn=null;
static String sql;
public static void main(String[] args)
{
try
{ //链接数据库,取得数据
//Class.forName("oracle.jdbc.driver.OracleDriver");//oracle数据库
Class.forName("com.mysql.jdbc.Driver");//mysql数据库
conn=DriverManager.getConnection("jdbc:mysql://192.168.1.109/cpsad?user=root&password=admin&useUnicode=true&characterEncoding=UTF-8");
Statement st=conn.createStatement();
ResultSet rs=st.executeQuery("select * from user");
DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();
DocumentBuilder builder=factory.newDocumentBuilder();
Document doc=builder.newDocument();
Element comp=doc.createElement_x_x("COMP");
while(rs.next())
{
Element person=doc.createElement_x_x("PERSON");
Element deptno=doc.createElement_x_x("DEPTNO");
deptno.a(doc.createTextNode(String.valueOf(rs.getInt(1))));
person.a(deptno);
Element dname=doc.createElement_x_x("DNAME");
dname.a(doc.createTextNode(new schemeXml().xmlReplace(rs.getString(2))));
person.a(dname);
Element loc=doc.createElement_x_x("LOC");
loc.a(doc.createTextNode(new schemeXml().xmlReplace(rs.getString(3))));
person.a(loc);
comp.a(person);
}
rs.close();
st.close();
conn.close();
doc.a(comp);
((XmlDocument)doc).write(new FileOutputStream("src/dept.xml"));
System.out.println("操作成功!!!");
}catch(ClassNotFoundException e)
{
e.printStackTrace();
}catch(SQLException e1)
{
e1.printStackTrace();
}catch(ParserConfigurationExcep tion e2)
{
e2.printStackTrace();
}catch(FileNotFoundException e3)
{
e3.printStackTrace();
}catch(IOException e4)
{
e4.printStackTrace();
}
}
public String xmlReplace(String value){
System.out.println("value---old"+value);
//value=value.replace("&", "&");
// value=value.replace("<", "<");
// value=value.replace(">", ">");
// value=value.replace("'", "'");
value=value.replace( "<","<");
value=value.replace( ">",">");
value=value.replace( "'","'");
// value.replace("""", """);
System.out.println("value---new"+value);
return value;
}
}
crimson.jar
第二步()
注意sql 语句 以及生成位置 本单元测试生成在src下
package com.test.xml;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.apache.crimson.tree.XmlDocument;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.ParserConfigurationExcep
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.FileNotFoundException;
import java.io.IOException;
import org.xml.sax.SAXException;
public class schemeXml
{
static Connection conn=null;
static String sql;
public static void main(String[] args)
{
try
{
Class.forName("com.mysql.jdbc.Driver");//mysql数据库
conn=DriverManager.getConnection("jdbc:mysql://192.168.1.109/cpsad?user=root&password=admin&useUnicode=true&characterEncoding=UTF-8");
}catch(ClassNotFoundException e)
{
}catch(SQLException e1)
{
}catch(ParserConfigurationExcep
{
}catch(FileNotFoundException e3)
{
}catch(IOException e4)
{
}
}
public String xmlReplace(String value){
//
//
//
// value.replace("""", """);
}
}