publicbooleanadd(Book book){boolean flag =false;//设置一个布尔类型作为判断数据是否添加成功try{
Document doc =doc("./src/com/bibn/Test/bean/book.xml");//调用其他方法,读取xml文件
Element rootEle = doc.getRootElement();//获取根节点对象
Element bookIdEle = rootEle.addElement("book");//获取book标签的节点对象
Element bookNameEle = bookIdEle.addElement("bookName");
Element priceEle = bookIdEle.addElement("price");
bookIdEle.addAttribute("bookId", book.getBookId());//添加bookI及其值
bookNameEle.setText(book.getBookName());//添加标签的值
priceEle.setText(String.valueOf(book.getPrice()));writeXml(doc);//调用外方法将doc的内容添加到xml文件中
flag =true;}catch(DocumentException e){
e.printStackTrace();}catch(Exception e){
e.printStackTrace();}return flag;}
删
publicbooleandelete(String bookId){try{
Document doc =doc("./src/com/bibn/Test/bean/book.xml");
Element root = doc.getRootElement();
Iterator<Element> iterator = root.elementIterator();//迭代器while(iterator.hasNext()){
Element next = iterator.next();if(next.attributeValue("bookId").equals(bookId)){//获取的编号和迭代的编号是否相等// 获取根元素
Element rootEle = doc.getRootElement();// 获取所有直接子元素,并移除
rootEle.remove(next);// 删除id属性
Attribute attribute = next.attribute("bookId");
next.remove(attribute);writeXml(doc);returntrue;}}}catch(Exception e){}returnfalse;}
改
publicbooleanmodify(Book book){try{
Document doc =doc("./src/com/bibn/Test/bean/book.xml");
Element root = doc.getRootElement();
Iterator<Element> iterator = root.elementIterator();while(iterator.hasNext()){
Element next = iterator.next();if(next.attributeValue("bookId").equals(book.getBookId())){// Element contatcElem2 =// doc.getRootElement().element("book");// 3.通过增加同名的属性的方法,修改属性值
next.addAttribute("bookId",""+ book.getBookId());/*
* 修改文本: 1.得到标签 2.修改文本
*/
Element nameElement = next.element("bookName");
Element priceElement = next.element("price");
nameElement.setText(book.getBookName());
priceElement.setText(""+ book.getPrice());// 1.创建输出流通道writeXml(doc);returntrue;}}}catch(Exception e){}returnfalse;}
查
public List<Book>select()throws DocumentException {
list =newArrayList<Book>();
Book book = null;
SAXReader saxReader =newSAXReader();
Document doc =doc("./src/com/bibn/Test/bean/book.xml");
Element root = doc.getRootElement();
Iterator<Element> iterator = root.elementIterator();while(iterator.hasNext()){
Element next = iterator.next();
Element bookName = next.element("bookName");
Element price = next.element("price");
book =newBook(next.attributeValue("bookId"), bookName.getText(),
Double.parseDouble(price.getText()));
list.add(book);}return list;}