您的位置:首页 > 编程语言 > Java开发

一个用Jdom输出XML的java程序

2008-03-27 15:05 393 查看
通过java程序组织数据输出XML的方法有很多种,用JDOM的组件包构建XML便是其中比较方便的一种,以下通过一个例子来说明。

首先,从这里下载jdom的包,并将/build/jdom.jar导入eclipse。

其次,新建一个类。具体代码参考下面。通过下面的代码就可以输出XML代码了。

jdom的使用方法,请参考这里


package xmlcreate;




import java.io.*;


import org.jdom.*;


import org.jdom.input.*;


import org.jdom.output.*;


import java.io.IOException; 


import java.io.PrintWriter; 


import javax.servlet.ServletException; 


import javax.servlet.http.HttpServlet; 


import javax.servlet.http.HttpServletRequest; 


import javax.servlet.http.HttpServletResponse;






public class Xmlcreate extends HttpServlet...{


    protected void doGet(HttpServletRequest request, HttpServletResponse response) 




      throws ServletException, IOException ...{ 


      PrintWriter out = response.getWriter(); 


      


      //下面这句话必备,否则输出的XML不能被AJAX的对象XMLHttpResquest的方法responseXML()所识别,只能在responseText里输出


      response.setContentType("text/xml;charset=UTF-8");


      String keyword = Escape.unescape(request.getParameter("keyword"));


      




         try ...{




             String[] key       = ...{"111","112","113","132","131","232","321","211","258"};




             String[] content = ...{"aaa","bbbbbbbbbbbbbbbbaa","ccc","ddd","中文","测试","中国人","测试成员","一个好长好长的试一下啊"};


             Xmlcreate s1 = new Xmlcreate();


             s1.BuildXMLDoc(key,content,keyword,out);


             }




         catch (Exception e) ...{


             System.out.println(e.getMessage());


         }


    } 


     


     


public void BuildXMLDoc(String[] key,String[] content,String keyword,PrintWriter out) 


    throws IOException, JDOMException




...{        


    Element resultRoot = new Element("result");


    Document Doc = new Document(resultRoot);




    for(int i =0;i<key.length;i++)...{


        int keyindex = key[i].indexOf(keyword);


        int contentindex = content[i].indexOf(keyword);




        if(keyindex == 0 || contentindex == 0)...{


            Element rsNode = new Element("rs");


            resultRoot.addContent(rsNode);


      


            Element keyNode = new Element("key");


            keyNode.addContent(Escape.escape(key[i]));


            rsNode.addContent(keyNode);


          


            Element contentNode = new Element("content");


          


            contentNode.addContent(Escape.escape(content[i]));


            rsNode.addContent(contentNode);


        }


    }




    //Format format = Format.getPrettyFormat();


    //format.setEncoding("GB2312");


    //XMLOutputter XMLOut = new XMLOutputter(format);


    XMLOutputter XMLOut = new XMLOutputter();


    XMLOut.output(Doc, out);


    }


}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐