快速业务通道

检验EJB 3.0 简化API规范 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-20

Jakarta-Common-Digester使用笔记

时间:2011-01-28

Digester不是一个XML Parser,它只是对SAX更高层次上的一个封装使用Digester,将XML映射成javaBean. 我们无须了解SAX和DOM的解析过程,只要给Digester添加一些解析规则,就能对一个xml文件进行解析。Digester使用堆栈来保存xml节点(stack.push()方法),当该xml节点中嵌套的所有子节点解析完毕,该节点将被弹出(stack.pup()方法)。Digester最大的优点就是使用模式匹配来表示xml文件中节点之间的父子关系 。

代码如下:

students.xml

<?xml version="1.0" encoding="UTF-8" ?> <stuClass name="fddfdf">    <student>      <name from="cn">Java Boy</name>      <course>JSP</course>    </student>    <student>      <name>Java Girl</name>      <course>EJB</course>    </student> </stuClass>

Model类:Student.java

package demo.javabean; public class Student ...{    private String name;    private String from;    private String course;    public String getName() ...{      return name;    }    public void setName(String name) ...{      this.name = name;    }    public String getFrom() ...{      return from;    }    public void setFrom(String from) ...{      this.from = from;    }    public String getCourse() ...{      return course;    }    public void setCourse(String course) ...{      this.course = course;    } }

Jakarta-Common-Digester使用笔记(2)

时间:2011-01-28

Model类:StuClass.java

package demo.javabean; import java.util.Vector; public class StuClass ...{    private String name;    private Vector students = new Vector();    public String getName() ...{      return name;    }    public void setName(String name) ...{      this.name = name;    }    public Vector getStudents() ...{      return students;    }    public void setStudents(Vector students) ...{      this.students = students;    }    public void addStudent(Student student)...{      students.add(student);    } }

测试类:DigestStudents.java

package demo; import java.util.Vector; import org.apache.commons.digester.Digester; import demo.javabean.StuClass; public class DigestStudents ...{    Vector stuClass;    public DigestStudents() ...{      stuClass = new Vector();    }    public static void main(String[] args) ...{      DigestStudents digestStudents = new DigestStudents();      digestStudents.digest();    }    private void digest() ...{      try ...{        Digester digester = new Digester();        // Push the current object onto the stack        digester.setValidating(false);        // Creates a new instance of the Student class        digester.addObjectCreate("stuClass", "demo.javabean.StuClass");        digester.addSetProperties("stuClass", "name", "name");        digester

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号