duguchenmeng
2011-03-23 16:40 阅读 137
已采纳

一道关于xml的题

1.创建项目web
2.webroot创建一个文件夹xml
3.创建一个servlet:createAction:负责创建一个xml/1012.xml(50%)
    <students>
        <student sid="1">
            <sname>XXX</sname>
            <sex>男</sex>
            <age>22</age>
        </student>

    </students>
4.创建一个servlet:showAction:读取xml/1012.xml,返回到一个show.jsp的页面(50%)
    将xml的内容,以table的方式显示
        编号  姓名  性别  年龄

     5.servlet的调用 通过index.jsp
       创建两个超链接
            创建xml       读取xml
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

2条回答 默认 最新

  • 已采纳
    dyccsxg dyccsxg 2011-03-24 10:55

    [code="java"] /**
    * 创建 xml
    * @throws IOException
    */
    public void createAction() throws IOException{
    Document doc = DocumentHelper.createDocument();

        Element root = doc.addElement("students");
        Element student = root.addElement("student");
        student.addAttribute("sid", "1");
        student.addElement("sname").addText("XXX");
        student.addElement("sex").addText("男");
        student.addElement("age").addText("22");
    
        String filePath = getServletContext().getRealPath("xml/1012.xml");
        PrintWriter pw = new PrintWriter(filePath);
        OutputFormat format = OutputFormat.createPrettyPrint();
        format.setEncoding("utf-8");
        format.setIndentSize(4);
    
        XMLWriter writer = new XMLWriter(pw, format);
        writer.write(doc);
        writer.flush();
        writer.close();
    }
    /**
     * 读取 xml
     * @return
     * @throws Exception 
     */
    @SuppressWarnings("unchecked")
    public List<Map<String,String>> showAction() throws Exception{
        List<Map<String,String>> list = new ArrayList<Map<String,String>>();
    
        String filePath = getServletContext().getRealPath("xml/1012.xml");
        SAXReader reader = new SAXReader();
        File file = new File(filePath);
        if (!file.exists()){
            return list;
        }
        Document doc = reader.read(file);
        Element root = doc.getRootElement();
        List<Element> list_stu = root.selectNodes("student");
        for (Element stu : list_stu){
            Map<String,String> row = new HashMap<String,String>();
            row.put("sid", stu.attributeValue("sid"));
            row.put("sname", stu.elementText("sname"));
            row.put("sex", stu.elementText("sex"));
            row.put("age", stu.elementText("age"));
            list.add(row);
        }
        return list;
    }[/code]
    

    [url]http://62s2mg.blu.livefilestore.com/y1payAywMkQKRgT0QQSV9zRYhE0QK-ts8BW6qbE44_Vwb5JyvHrlCYIUrOXRlCMlwQE5y-lpvMgHvUciOWWx3EKiTxBDLAYH5lM/xmlweb.zip[/url]

    点赞 评论 复制链接分享
  • akunamotata akunamotata 2011-03-24 08:53

    DOM4J 是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件。如今你可以看到越来越多的 Java 软件都在使用 DOM4J 来读写 XML,特别值得一提的是连 Sun 的 JAXM 也在用 DOM4J

    点赞 评论 复制链接分享

相关推荐