ResultSet转换成XML字符串传递提取组成String[].

前端之家收集整理的这篇文章主要介绍了ResultSet转换成XML字符串传递提取组成String[].前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

http://jslyghj.iteye.com/blog/467784

http://blog.sina.com.cn/s/blog_700dec940100spox.html

  1. private String generateXML(final ResultSet rs) throws sqlException {
  2. final StringBuffer buffer = new StringBuffer(1024 * 4);
  3. if (rs == null)
  4. return "";
  5. buffer.append("<?xml version=\"1.0\" encoding=\"GB2312\"?>\n"); // XML的头部信息
  6. buffer.append("<ResultSet>\n");
  7. ResultSetMetaData rsmd = rs.getMetaData(); // 得到结果集的定义结构
  8. int colCount = rsmd.getColumnCount(); // 得到列的总数
  9. // 对放回的全部数据逐一处理
  10. for (int id = 1; rs.next(); id++) {
  11. // 格式为row id,col name,col context
  12. buffer.append("\t<row id=\"").append(id).append("\">\n");
  13. for (int i = 1; i <= colCount; i++) {
  14. String type = rsmd.getColumnTypeName(i); // 获取字段类型
  15. buffer.append("\t\t<col name=\"" + rsmd.getColumnName(i)
  16. + "\">");
  17. buffer.append(getValue(rs,i,type));
  18. buffer.append("</col>\n");
  19. }
  20. buffer.append("\t</row>\n");
  21. }
  22. buffer.append("</ResultSet>");
  23. rs.close();
  24. return buffer.toString();
  25. }

  1. private String[] xmlElements(String xmlDoc) throws JDOMException,IOException {
  2. //创建一个新的字符串
  3. StringReader read = new StringReader(xmlDoc);
  4. //创建新的输入源SAX 解析器将使用 InputSource 对象来确定如何读取 XML 输入
  5. InputSource source = new InputSource(read);
  6. //创建一个新的SAXBuilder
  7. SAXBuilder sb = new SAXBuilder();
  8. //通过输入源构造一个Document
  9. Document doc = sb.build(source);
  10. //取的根元素
  11. Element root = doc.getRootElement();
  12. //得到根元素所有子元素的集合
  13. List jiedian = root.getChildren();
  14. //获得XML中的命名空间(XML中未定义可不写)
  15. Namespace ns = root.getNamespace();
  16. Element et = null;
  17. String[] result = new String[jiedian.size()];
  18. for(int i=0;i<jiedian.size();i++){
  19. et = (Element) jiedian.get(i);//循环依次得到子元素
  20. result[i]=et.getChild("col",ns).getText();//这个为什么要搞col 还是有点不 明白。。。
  21. }
  22. et = (Element) jiedian.get(0);
  23. List zjiedian = et.getChildren();
  24. for(int j=0;j<zjiedian.size();j++){
  25. Element xet = (Element) zjiedian.get(j);
  26. }
  27. return result;
  28. }

猜你在找的XML相关文章