前30天常用知识点总结

  • 格式:doc
  • 大小:41.50 KB
  • 文档页数:7

下载文档原格式

  / 7
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

前30天常用知识点总结:

1.XML的几种读取方式:

方式一:

//目标:jaxp如何读取xml文件

public class Demo1 {

//创建对象,读取xml内容

public static void main(String[] args) throws Exception {

// 1)创建DocumentBuilderFactory实例//ctrl+2 松开l或者alt+shift+l

DocumentBuilderFactory factroy = DocumentBuilderFactory.newInstance();

//2)通过DocumentBuilderFactory实例创建DocumentBuilder

DocumentBuilder builder = factroy.newDocumentBuilder();

//3)通过DocumentBuilder的parse方法读取xml文件,返回一个Document对象

Document doc = builder.parse("src/Locale.xml");

}

//读出到xml中

public static void write2xml(Document doc) throws TransformerException

{

TransformerFactory factory = TransformerFactory.newInstance();

Transformer ts = factory.newTransformer();

ts.transform(new DOMSource(doc), new StreamResult("src/exam.xml"));

}

}

读取方式:

//1)读取exam.xml文件

Document doc = XMLUtil.getDocument();

//2)创建元素,添加idcard,examid属性

Element stuElem = doc.createElement("student");

stuElem.setAttribute("idcard", student.getIdcard());

stuElem.setAttribute("examid", student.getExamid());

//3)创建元素

Element nameElem = doc.createElement("name");

Element locElem = doc.createElement("location");

Element graElem = doc.createElement("grade");

nameElem.setTextContent(student.getName());

locElem.setTextContent(student.getLocation());

graElem.setTextContent(student.getGrade()+"");

//4)建立元素关系

stuElem.appendChild(nameElem);

stuElem.appendChild(locElem);

stuElem.appendChild(graElem);

//5)建立的关系

Node root = doc.getElementsByTagName("exam").item(0);

root.appendChild(stuElem);

//6)写出到exam.xml文件

XMLUtil.write2xml(doc);

方式二:

//dom4j方式读取

//创建Document对象

public static Document getDocument() throws DocumentException

{

SAXReader reader = new SAXReader();

//2)读取xml文件

org.dom4j.Document doc = reader.read("F:/chuanzhikaifa/day13demo/src/db.xml");

return (Document) doc;

}

//写出

public static void write2xml(Document doc) throws IOException

{

XMLWriter writer = new XMLWriter(

new FileOutputStream("F:/chuanzhikaifa/day13demo/src/db.xml"));

//2)写出xml文件

writer.write(doc);

//3)关闭流

writer.close();

}

Xpth方式读取

Document doc = XMLUtil1.getDocument();

List list1 = doc.selectNodes("//customer"); // 查询多个节点

添加:

Element root=doc.getRootElement();

Element cuElem = root.addElement("customer"); // 添加元素

jaxp核心dom解析的api:

读取xml文件:

1)DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();

2)DocumentBuilder builder = factory.newDocumentBuilder();

3) Document doc = builder.parse("xml路径");

写出xml文件:

1) TransformerFactory factory = TransformerFactory.newInstance();

2) Transformer ts = factory.newTransformer();

3) ts.transform(new DOMSource(document), new StreamResult("xml路径"));

查询:

document.getElementsByTagName("name") 读当前文档下的子元素

document.getElementById("id")

element.getElementsByTagName("name") 读当前元素下的子元素