有两种写法
第一种:自己拼装xml格式字符串
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class TaskList {
?public String getTaskList(Integer userID) throws Exception {
??StringBuilder xmlString=new StringBuilder();
??try {
???Class.forName("com.mysql.jdbc.Driver");
???System.out.println("数据库驱动加载成功!");
??} catch (java.lang.ClassNotFoundException ce) {
???System.out.println("数据库驱动加载失败!");
???System.out.println(ce.getMessage());
??}
??Connection conn = DriverManager
????.getConnection("jdbc:mysql://192.168.0.1/test?user=root&password=admin");
??Statement stat = conn.createStatement();
??String selectSQL = "select * from USER_INFO WHERE USER_ID = /"" + userID + "/";";
??System.out.println(selectSQL);
??ResultSet rs = stat.executeQuery(selectSQL);
??xmlString.append("<userList>");
??while (rs.next()) {
???xmlString.append("<userItem taskId=/"");
???xmlString.append(rs.getString("USER_ID"));
???xmlString.append("/">");
???xmlString.append("<userName>");
???xmlString.append(rs.getString("USER_NAME"));
???xmlString.append("</userName>");
???xmlString.append("</userItem >");
??}
??xmlString.append("</userList>");
??rs.close();
??conn.close();
??System.out.println(xmlString.toString());
??return xmlString.toString();
?}
}
?
第二种:调用org.dom4j
?
import java.io.FileWriter;
import java.io.IOException;
import java.io.StringWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
import view.TaskList;
?
public class Test1 {
?public static Document GetDocument(ResultSet rs) throws Exception {
??Document document = DocumentHelper.createDocument();
??Element root = document.addElement("taskList");
??Element author1 = root.addElement("taskItem");
??int count = 1;
??while (rs.next()) {
???author1.addAttribute("userId",rs.getString("TASK_ID"));
???Element author1 = author1.addElement("taskName");
???author1.addText(rs.getString("TASK_NAME"));
??}
??return document;
?}
?public static String GetXMLString(ResultSet rs) throws Exception {??StringWriter sw = new StringWriter();??XMLWriter writer = null;??OutputFormat format = OutputFormat.createPrettyPrint();??format.setEncoding("UTF-8");??try {???writer = new XMLWriter(format);???writer.setWriter(sw);???writer.write(GetDocument(rs));???writer.close();??} catch (IOException e) {???e.printStackTrace();??}??return sw.toString();?}?public static void main(String[] args) throws IOException,Exception {??String xmlString="";??int userID = 2;??try {???Class.forName("com.mysql.jdbc.Driver");???System.out.println("数据库驱动加载成功!");??} catch (java.lang.ClassNotFoundException ce) {???System.out.println("数据库驱动加载失败!");???System.out.println(ce.getMessage());??}??Connection conn = DriverManager????.getConnection("jdbc:mysql://192.168.0.1/zhc?user=root&password=admin");??Statement stat = conn.createStatement();??String selectSQL = "select * from USER_INFO WHERE USER_ID = /"" + userID + "/";";??System.out.println(selectSQL);??ResultSet rs = stat.executeQuery(selectSQL);??TaskList taskList = new TaskList();??xmlString = GetXMLString(rs);??rs.close();??conn.close();??System.out.println(xmlString);?}}打完