一、目标
用xml和Xapth做一个简单的数据管理系统,对数据的进行简单的增、删、改、查询操作。如做一个简单的班级学生信息管理系统:
二、环境及开发工具
环境:Java
工具:Eclipse
开发包:如图
三、原理
dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。dom4j是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的,可以在SourceForge上找到它。
XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航。XPath 使用路径表达式在 XML 文档中选取节点。节点是通过沿着路径或者 step 来选取的。
用Xpath定位到相应节点,用dom4j进行增、删、改。
四,类分析,如下图:
addframe:执行添加操作时显示的界面。
allfunction:对xml操作各功能的实现。
alterframe:执行修改操作时显示的界面。
deleteframe:执行删除操作时显示的界面。
mainframe:主界面
queryframe:执行查询操作时显示的界面。
五、主要实现如下:
import java.io.File;import java.io.FileOutputStream;import java.io.FileWriter;import java.io.IOException;import java.util.Iterator;import java.util.List;import org.dom4j.xpath.*;import javax.xml.parsers.ParserConfigurationException;import javax.xml.xpath.*;import org.dom4j.Attribute;import org.dom4j.Document;import org.dom4j.DocumentHelper;import org.dom4j.Element;import org.dom4j.io.OutputFormat;import org.dom4j.io.SAXReader;import org.dom4j.io.XMLWriter;import org.xml.sax.SAXException;/** * @author ncw * create the function */public class allfunction { /* * 获取全部信息 */ public String getall(){ String allinformation=""; try { SAXReader saxReader = new SAXReader(); //saxReader.setEncoding("UTF-8"); Document document = saxReader.read(new java.io.File("manage.xml")); List academylist = document.selectNodes("/school/academy" ); for(int i=0;i
alterframe deleteframe mainframe queryframe等类则实现相应的界面显示。
相应xml结构如下:
六:总结:
1 功能简单,操作不够灵活
2 在对数据的读入与存储上有待改进。