【Java】XML 了解

xiaoxiao2021-02-28  109

介绍

XML(extensible markup language)可扩展标记语言,用来描述事物本身 XSL(extensible stylesheet language) 可扩展样式表语言,用于以可读格式呈现 XML DTD(docment type definition)文档类型定义 和 Schema 是用来约定XML标签的,验证格式是否符合此规则

示例

XML code

<?xml version="1.0" encoding="gb2312"?> <!DOCTYPE 书籍 SYSTEM "book.dtd"> <书籍> <> <>精通Java</> <>张三</> < unit="RMB">77</> </> <> <>Angular2权威</> <>Tom</> < unit="美元">49.9</> </> </书籍>

XSL code

<?xml version="1.0" encoding="gb2312"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/TR/WD-xsl"> <xsl:template match="书籍"> <p align="center"> <table border="1"> <tr> <td></td> <td></td> <td></td> </tr> <xsl:for-each select="书"> <tr> <td><xsl:value-of select="名"/></td> <td><xsl:value-of select="人"/></td> <td><xsl:value-of select="价"/></td> </tr> </xsl:for-each> </table> </p> </xsl:template> </xsl:stylesheet>

Schema code

<?xml version="1.0" encoding="gb2312"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="书籍"> <xs:complexType> <xs:sequence> <xs:element name="书"> <xs:element name="名" minoccurs="1"></xs:element> <xs:element name="人"></xs:element> <xs:element name="价"> <xs:attribute name="unit"> <xs:enumeration value="RMB"/> <xs:enumeration value="美元"/> <xs:enumeration value="日元"/> </xs:attribute> </xs:element> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>

dom4j 操作

import java.io.InputStream; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.Element; import org.dom4j.io.SAXReader; public class XmlConfigReader { //懒汉式单例-延迟加载 private static XmlConfigReader instance = null; //保存jdbc相关配置信息 private JdbcConfig jdbcConfig = new JdbcConfig(); private XmlConfigReader() { SAXReader reader = new SAXReader(); InputStream in = Thread.currentThread().getContextClassLoader().getResourceAsStream("sys-config.xml"); try { Document doc = reader.read(in); //取得jdbc相关配置信息 Element driverNameElt = (Element)doc.selectObject("/config/db-info/driver-name"); Element urlElt = (Element)doc.selectObject("/config/db-info/url"); Element userNameElt = (Element)doc.selectObject("/config/db-info/user-name"); Element passwordElt = (Element)doc.selectObject("/config/db-info/password"); //设置jdbc相关的配置 jdbcConfig.setDriverName(driverNameElt.getStringValue()); jdbcConfig.setUrl(urlElt.getStringValue()); jdbcConfig.setUserName(userNameElt.getStringValue()); jdbcConfig.setPassword(passwordElt.getStringValue()); } catch (DocumentException e) { e.printStackTrace(); } } public static synchronized XmlConfigReader getInstance() { if (instance == null) { instance = new XmlConfigReader(); } return instance; } }

更多操作可参考:http://blog.csdn.net/cselmu9/article/details/7843120

转载请注明原文地址: https://www.6miu.com/read-35978.html

最新回复(0)