为了账号安全,请及时绑定邮箱和手机立即绑定

Java中的xml

Java中的xml

human123 2015-12-25 20:35:39
package com.imooc.jdomtest; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.List; import org.jdom2.Attribute; import org.jdom2.Document; import org.jdom2.Element; import org.jdom2.JDOMException; import org.jdom2.input.SAXBuilder; import com.imooc.entity.Book; public class JDOMTest {     /**      * @param args      */     public static void main(String[] args) {         //private static ArrayList<Book> booksList =new ArrayList<Book>();         ArrayList<Book> booksList=new ArrayList<Book>();         // 进行对book.xml文件的JDOM解析         // 准备工作         // 1.创建一个SAXBuilder对象         SAXBuilder saxBuilder = new SAXBuilder();         InputStream in;         try {             // 2.创建一个输入流,将xml文件加载到输入流中             in = new FileInputStream("src/res/books.xml");             // 3.通过saxBuilder的build方法,将输入流加载到saxBuilder中             Document document = saxBuilder.build(in);             // 4.通过document对象获取xml文件的根节点             Element rootelement = document.getRootElement();             // 5.获取根节点下的子节点的List集合             List<Element> bookList = rootelement.getChildren();             // 继续进行解析             for (Element book : bookList) {                 Book bookEntity= new Book();                 System.out.println("=========开始解析第"                         + (bookList.indexOf(book) + 1) + "书==========");                 // 解析book的属性                 List<Attribute> attrList = book.getAttributes();                 // 知道节点下属性名称时,获取节点值                 // book.getAttributeValue("id");                 // 遍历attrList(针对不清楚book节点下属性的名字及数量)                 for (Attribute attr : attrList) {                     // 获取属性名                     String attrName = attr.getName();                     // 获取属性值                     String attrValue = attr.getValue();                     System.out.println("属性名:" + attrName + "------属性值:"                             + attrValue);                                          if (attrName.equals("id")) {                         bookEntity.setId(attrValue);                     }                 }                 // 对book节点的子节点的节点名以及节点值                 List<Element> bookChilds = book.getChildren();                 for (Element child : bookChilds) {                     System.out.println("节点名:" + child.getName() + "----节点值:"                             + child.getValue());                     if (child.getName().equals("name")) {                         bookEntity.setName(child.getValue());                     }else if (child.getName().equals("author")) {                         bookEntity.setAuthor(child.getValue());                     }else if (child.getName().equals("year")) {                         bookEntity.setYear(child.getValue());                     }else if (child.getName().equals("price")) {                         bookEntity.setPrice(child.getValue());                     }else if (child.getName().equals("language")) {                         bookEntity.setLanguage(child.getValue());                     }                 }                 System.out.println("=========结束解析第"                         + (bookList.indexOf(book) + 1) + "书==========");                 /*booksList.add(bookEntity);                 bookEntity=null;*/             }         } catch (FileNotFoundException e) {             e.printStackTrace();         } catch (JDOMException e) {             e.printStackTrace();         } catch (IOException e) {             e.printStackTrace();         }     } }这里 //private static ArrayList<Book> booksList =new ArrayList<Book>();         ArrayList<Book> booksList=new ArrayList<Book>();为什么一加上private就报错
查看完整描述

2 回答

?
产品经理不是经理

TA贡献481条经验 获得超143个赞

private修饰的是成员变量和成员方法的,方法里的局部变量是不能加修饰符的

查看完整回答
反对 回复 2015-12-26
  • 2 回答
  • 0 关注
  • 1411 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信