易截截图软件、单文件、免安装、纯绿色、仅160KB

Java通过XML Schema校验XML

Java通过XML Schema校验XML
 
XML的校验在XML处理中非常常见,如果没有有效的办法来校验XML的合法性,往往会导致很多问题。
 
XML的校验是通过XML Schema(XSD) 或DTD文件的语法规范来校验的。DTD现在越来越不受欢迎了,在此选用XSD来校验。
 
Java校验XML是件和扯淡的事情,因为Sun的XML相关软件包会令你云里雾里。
W3C这块的XML相关的规范相当的多,这也是导致XML处理器起来费劲的主要原因。要想精通这些规范和相关的API,实在是异想天开(新的规范在不停出,越来越多!)。
 
校验的原理是通过读取解析XML的时候设置校验的XSD和校验错误处理器,顺便校验的。
 
下面不扯这些废话了,我用DOM4j结合javaxml api使用XSD来校验一个xml有效性,下面这个例子虽然和蹩脚,但是也费了一番功夫,放出来大家研究吧,有更好的实现也希望能和我一同分享。
 
例子如下:
 
XML文件
<?xml version="1.0"?>
<note
        xmlns="http://www.w3school.com.cn"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://www.w3school.com.cn file:///D:/_dev_stu/xsdtest/src/note.xml">
    <to>George</to>
    <from>John</from>
    <heading>Reminder</heading>
    <body>Don't forget the meeting this weekend!</body>
</note>
 
XSD文件
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           targetNamespace="http://www.w3school.com.cn"
           xmlns="http://www.w3school.com.cn"
           elementFormDefault="qualified">
    <xs:element name="note">
        <xs:complexType>
      &


相关文档:

java解析xml的具体流程

java 代码
import javax.xml.parsers.DocumentBuilder;   
import javax.xml.parsers.DocumentBuilderFactory;   
  
import org.w3c.dom.Document;   
import org.w3c.dom.Element;   
import org.w3c.dom.NodeList;    ......

java环境变量配置

下载一个JDK的安装包,我下载的是jdk-6u10-rc2-bin-b32-windows-i586-p-12_sep_2008.exe,大家可以去网上搜索,也可以去官方
下载。
下载后,点击exe文件,一直下一步的安装,遇到需要选择安装目录的,可以默认,也可以自己指定(例如指定安装在D:\Program Files\Java)
安装过程有两次选择路径的,一次是对jdk1.6.0_10进 ......

java 运算符

  在算术运算符部分,需要特别注意的一个语法现象是“晋升”。晋升指低于int的3种数字类型(byte、short和char)进行算术运算后,结果会自动提升成int类型。示例代码如下:
                   byte b1 = 10;
& ......

JAVA类实现序列化的方法是?

Java中通过implements Serializable来实现对象的序列化。其实Serializable接口中并没有需要实现的方法,注明某个类implements Serializable只是为了标识或表明这个类可以被序列化。
       那么什么是序列化呢,序列化又有什么作用呢?
       一个类,或 ......

Java IO学习笔记:字节流

Java IO学习笔记:字节流
字节流是最基本的流,文件的操作、网络数据的传输等等都依赖于字节流。而字符流常常用于读取文本类型的数据或字符串流的操作等等。
 
关于字节流的API,没什么好说的,看看就知道了。这里挑几个关键点:
 
一、InputStream的API
 
1、public int read()
从输入流读取下一个 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号