三九宝宝网宝宝教育写作范文

Java编写图书管理系统使用XML存储

02月11日 编辑 39baobao.com

[请问天锐的移动终端安全管理系统有什么功能]天锐的移动终端安全管理系统对接入单位内部的移动终端实现安全准入控制、终端设备管控、行为安全审计、数据加密保护,确保移动终端数据存储、传输、使用的全面安全。 身份认...+阅读

import java.io.File; import java.io.FileOutputStream; import java.util.ArrayList; import java.util.List; import java.util.Scanner; 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; public class Book { private int no; private String name; private double value; public Book() { } public Book(int no, String name, double value) { this.no = no; this.name = name; this.value = value; } public double getValue() { return value; } public void setValue(double value) { this.value = value; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getNo() { return no; } public void setNo(int no) { this.no = no; } } class BookList { private List bookList; public BookList() { bookList = readXML(); } public long getCount() { return bookList.size(); } public List getBookList() { return bookList; } public void setBookList(List bookList) { this.bookList = bookList; } public void add(Book book) { bookList.add(book); } public boolean delete(String name) { Book book = query(name); return bookList.remove(book); } public void update(Book bookBefore, Book bookAfter) { bookList.remove(bookBefore); add(bookAfter); } public Book query(String name) { Book temp = null; for (Book book : bookList) { if (book.getName().equals(name)) { temp = book; } } return temp; } public synchronized void writeXmlDocument(Book book) { try { File file = new File("D:\\book.xml"); Document document = null; Element root = null; if (!file.exists()) { // 新建student.xml文件并新增内容 document = DocumentHelper.createDocument(); root = document.addElement("Books");//添加根节点 } else { SAXReader saxReader = new SAXReader(); document = saxReader.read(file); root = document.getRootElement();//获得根节点 } Element secondRoot = root.addElement("Book");//二级节点 //为二级节点添加属性,属性值为对应属性的值 secondRoot.addElement("no").setText(book.getNo() + ""); secondRoot.addElement("name").setText(book.getName() + ""); secondRoot.addElement("value").setText(book.getValue() + ""); OutputFormat format = OutputFormat.createPrettyPrint(); format.setEncoding("GBK"); XMLWriter writer = new XMLWriter(new FileOutputStream("D:\\book.xml"), format); writer.write(document); writer.close(); document.clearContent(); } catch (Exception e) { e.printStackTrace(); } } public synchronized List readXML() { List list = new ArrayList();//创建list集合 File file = null; try { file = new File("D:\\book.xml");//读取文件 if (file.exists()) { SAXReader saxReader = new SAXReader(); Document document = saxReader.read(file); List nodeList = document.selectNodes("Books/Book"); for (int i = 0; i Element el = (Element) nodeList.get(i); Book book = new Book(); book.setNo(Integer.parseInt(el.elementText("no"))); book.setName(el.elementText("name")); book.setValue(Double.parseDouble(el.elementText("value"))); list.add(book); } } } catch (Exception e) { e.printStackTrace(); } return list; } } class Test { public static void main(String args[]) { BookList bl = new BookList(); boolean bBreak = true; while (bBreak) { System.out.println("请输入操作代码:"); System.out.println("1:添加 2:删除 3:修改 4:查询 5:书籍统计 6:退出"); Scanner sc = new Scanner(System.in); int code = sc.nextInt(); if (code == 1) { System.out.println("请输入编号"); int no = sc.nextInt(); System.out.println("请输入书名"); String name = sc.next(); System.out.println("请输入售价"); double value = sc.nextDouble(); Book book = new Book(no, name, value); bl.add(book); bl.writeXmlDocument(book); } else if (code == 2) { System.out.println("请输入要删除的书籍名"); String name = sc.next(); if (bl.delete(name)) { System.out.println("删除成功"); } else { System.out.println("书籍不存在"); } } else if (code == 3) { System.out.println("请输入要修改的书籍名"); String name = sc.next(); Book bookBefore = bl.query(name); System.out.println("请输入新的编号"); int newNo = sc.nextInt(); System.out.println("请输入新的书名"); String newName = sc.next(); System.out.println("请输入新的售价"); double value = sc.nextDouble(); Book bookAfter = new Book(newNo, newName, value); bl.update(bookBefore, bookAfter); } else if (code == 4) { System.out.println("请输入要查询的书籍名"); String name = sc.next(); Book book = bl.query(name); System.out.println("编号:" + book.getNo() + " 书名:" + book.getName() + " 售价:" + book.getValue(...

以下为关联文档:

怎么编写关于建筑施工的安全月报的文章安全员的工作很枯燥,也不好做。因为施工方对安全这块大部分都是搪塞而过,敷衍了事,为啥?减少资金投入呗,像有的时候安全检查,好多安全设施都是从其他地方借来应付检查的。检查过后...

酒店管理系统都有哪些酒店管理系统软件有非常多,全国不少于几万家。4星以上的酒店99%用的西软或中软,如果4星以下,70%用的金天鹅,市场份额和公司品牌都是最大的。 酒店管理系统是指一种可以提高酒店...

家庭旅馆选什么样的酒店管理系统酒店管理系统目前市面上的系统很多也很杂,适合家庭旅馆的比较少。介绍几款给你参考一下。 尚微软件:价格实行效果付费,平均每天每间2元,优点是服务好价格适中,软件是根据家庭旅馆...

想买hr管理系统怎么选择因为不知道您公司的情况,所以有三个选择:1 如果业务比较大部门比较多的角度考虑,选一些大型软件公司的产品,稳定,长期看方便升级.但前期购买成本和后期维护成本都会相对较高,适合...

物业管理系统应具有什么物业管理系统的如下: 人事管理子系统 从员工的招聘、任用到员工的离职进行全面有效的管理,详细记录员工的个人资料、家庭成员、员工合同、岗位考核、在职培训、离职手续办理等...

Struts框架在小区物业管理系统中有什么应用呢管理系统是近年来为适应小区建设和管理而兴起的一种新型产业,它的出现为住宅小区的现代化管理提供了保障。目前,物业管理系统的开发方法很多,但多数系统在开发中存在系统结构复...

智慧物业管理系统功能架构包含哪些层爱思蓝特物业管理系统V2.36,依据多家大型物业公司的实际情况,整合精良的物业管理经验与管理办法,专项研发的综合性物业管理系统。系统包括:房产资源管理、社区服务管理、物业缴...

智能物业信息管理系统设计管理工作包括哪些内容爱思蓝特物业管理系统V2.36,依据多家大型物业公司的实际情况,整合精良的物业管理经验与管理办法,专项研发的综合性物业管理系统。系统包括:房产资源管理、社区服务管理、物业缴...

物业管理系统开发设计思想有什么在物业管理系统公共服务模块中计划设计这么几个小模块 ①小区综合管理 ②房屋设备及小区设施管理 ③绿化管理 ④小区卫生管理 ⑤小区公共秩序维护和安全防范工作管理 ⑥小区...

推荐阅读
图文推荐