使用Xml文档进行数据的保存的学生成绩管理系统
2014-09-12 20:44
417 查看
有三种操作:
1.添加学生信息
2.删除学生信息
3.查看学生成绩
代码:
完整源码:http://download.csdn.net/detail/tan313/7905557
1.添加学生信息
2.删除学生信息
3.查看学生成绩
代码:
package cn.itcast.dao; import java.io.FileOutputStream; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import cn.itcast.bean.Student; public class StudentDao { public static void add(Student stu) throws Exception{ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.parse("src/Exam.xml"); Element e1 = (Element) document.getElementsByTagName("human").item(0); Element e2 = (Element) document.createElement("student"); e1.appendChild(e2); Element e21 = (Element) document.createElement("usrname"); e21.setTextContent(stu.getUsrname()); Element e22 = (Element) document.createElement("ticketNum"); e22.setTextContent(stu.getTicketNum()); Element e23 = (Element) document.createElement("idNum"); e23.setTextContent(stu.getIdNum()); Element e24 = (Element) document.createElement("location"); e24.setTextContent(stu.getLocation()); Element e25 = (Element) document.createElement("gradeNum"); e25.setTextContent(stu.getGradeNum()); e2.appendChild(e21); e2.appendChild(e22); e2.appendChild(e23); e2.appendChild(e24); e2.appendChild(e25); TransformerFactory ttfactory = TransformerFactory.newInstance(); Transformer tf = ttfactory.newTransformer(); tf.transform(new DOMSource(document), new StreamResult(new FileOutputStream("src/Exam.xml"))); } public static void delete(String usrname) throws Exception{ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.parse("src/Exam.xml"); NodeList list = document.getElementsByTagName("usrname"); for(int i=0;i<list.getLength();i++){ String content = list.item(i).getTextContent(); if(content.equals(usrname)){ list.item(i).getParentNode().getParentNode().removeChild(list.item(i).getParentNode()); } } TransformerFactory ttfactory = TransformerFactory.newInstance(); Transformer tf = ttfactory.newTransformer(); tf.transform(new DOMSource(document), new StreamResult(new FileOutputStream("src/Exam.xml"))); } public static void read(String ticketNum) throws Exception{ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.parse("src/Exam.xml"); NodeList list = document.getElementsByTagName("ticketNum"); for(int i=0;i<list.getLength();i++){ String num = list.item(i).getTextContent(); if(num.equals(ticketNum)){ Node root = list.item(i).getParentNode(); list(root); } } } private static void list(Node root) { NodeList child = root.getChildNodes(); for(int i=0;i<child.getLength();i++){ Node node = child.item(i); System.out.println(node.getNodeName()+":"+node.getTextContent()); } } }
完整源码:http://download.csdn.net/detail/tan313/7905557
相关文章推荐
- Laravel5学生成绩管理系统-01-安装-建表-填充数据
- 数据结构课程设计学生成绩管理系统源代码
- 数据结构课程设计--学生成绩管理系统
- 使用Java模拟一个简单的Dos学生成绩管理系统:
- 使用C++名单在文档处理和学生成绩管理系统相结合
- 学生管理系统----文件和数据库(oracle)两种保存数据方式
- 学生成绩管理系统--C语言:使用curses函数库和MySQL数据库
- 数据结构课程设计——学生成绩管理系统
- 学生成绩管理系统(数据结构之线性表实现)
- java版学生成绩管理系统(增删改查+数据用xml文档存储)
- C_综合使用数组实现简单的学生成绩管理系统
- 链表《5》使用链表实现学生成绩管理系统
- 学生信息管理系统V0.2(使用文件存储数据)【MVC模式、DAO模式、Factory模式】
- 汇编语言学生成绩管理系统(一)结构体的使用
- 使用C++结合文件操作和链表实现学生成绩管理系统
- 数据结构课程设计---学生成绩管理系统
- Python备份文件、文件版本的学生管理系统如何实现(将数据保存在txt文件中)
- 数据结构课程设计——学生成绩管理系统
- 设计一个学生成绩管理系统,实现对学生成绩的动态管理,实现对学生成绩的输入,显示,删除,查找,插入,最佳,保存,计算,排序等主要功能
- C语言使用单链表的学生成绩管理系统