前30天常用知识点总结
- 格式:doc
- 大小:41.50 KB
- 文档页数:7
前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)创建
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
添加:
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") 读当前元素下的子元素