Digester解析xml文件
来源:互联网 发布:python函数传入文件名 编辑:程序博客网 时间:2024/04/27 17:11
Java与xml数据绑定,需要解析xml,用Digester解析xml文件是个不错的选择。
用digester解析xml文件需要用到的jar包下载地址:http://download.csdn.net/detail/ll840768874/8592247
下面为实例代码:
xml文件代码
<Students><student><id>1</id><name>loup</name><age>25</age><address>南京</address></student><student><id>2</id><name>xf</name><age>25</age><address>无锡</address></student><student><id>3</id><name>wm</name><age>23</age><address>南京</address></student></Students>
跟标签为students,在Java中可以看成是student的一个list;下面为students类
public class Students{ private List<Student> listStus=new ArrayList<Student>(); public List<Student> getListStus() { return listStus; } public void setListStus(List<Student> listStus) { this.listStus = listStus; } /** * * 学生对象放入到list中 * * @param e * @see [类、类#方法、类#成员] */ public void addStudents(Student e) { this.listStus.add(e); } }
Java中需要有一个实体类来封装读取到的student元素属性。下面为student类:
public class Student{ private int id; private String name; private String address; private int age; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
下面为读取xml文件,使得xml文件盒Java数据类型相关联。
public class DigesterTest{ public Students DigTest() { Digester digester = new Digester(); digester.setValidating(false); //根节点对应的类 指明匹配模式和要创建的类 digester.addObjectCreate("Students", Students.class); //指明匹配模式和要创建的类 digester.addObjectCreate("Students/student", Student.class); //设置对应属性。和xml文件对应,不设置则为默认 digester.addBeanPropertySetter("Students/student/id", "id"); digester.addBeanPropertySetter("Students/student/name","name"); digester.addBeanPropertySetter("Students/student/age","age"); digester.addBeanPropertySetter("Students/student/address","address"); // 当移动到下一个标签中时的动作 digester.addSetNext("Students/student", "addStudents"); Students students=null; try { //xml放在src下面,通过getClassLoader().getResourceAsStream取到xml文件,直接写成parse("student.xml")会报找不到文件 students = (Students)digester.parse(DigesterTest.class.getClassLoader().getResourceAsStream("student.xml")); } catch (IOException e) { e.printStackTrace(); } catch (SAXException e) { e.printStackTrace(); } return students; }}
鄙人个人见解,不足之处望见谅。
0 0
- Digester解析xml文件
- Digester 解析XML文件
- Digester解析xml文件
- Digester解析xml文件
- Digester解析xml文件
- Digester解析xml文件
- Digester解析xml文件
- Digester解析xml文件
- Digester解析xml文件
- Digester解析xml文件
- Digester解析xml文件
- Digester解析XML文件
- Digester解析XML文件浅谈
- digester框架解析xml文件
- Digester 类解析 xml 文件
- 使用Struts Digester来解析XML文件
- 使用Digester解析XML文件简单范例
- 使用Struts Digester来解析XML文件
- Java设计模式透析之 —— 模板方法(Template Method)
- scanf和gets读取字符串
- openfire集群失败原因(关掉virbr0)
- shell脚本中在if语句中比较空串而出现的问题line 5: [: =: unary operator expected
- springmvc MultipartFile转file和图片压缩
- Digester解析xml文件
- ioS-------------APP使用自定义字体包
- unauthorizedAccessException
- java注解
- Linux系统下通过Socket文件描述符寻找连接状态
- ViewDragHelper详解(一)- 可拖动的view
- FREAK和ORB特征描述子
- [问题] Oracle 11g在安装时找不到文件em.ear
- Android安全机制--六种核心安全机制-加密、密钥、签名与证书