Module  java.xml
软件包  org.xml.sax.helpers

Class XMLReaderFactory


  • 已过时。
    建议使用SAXParserFactory

    @Deprecated(since="9")
    public final class XMLReaderFactory
    extends Object
    用于创建XML阅读器的工厂。
    This module, both source code and documentation, is in the Public Domain, and comes with NO WARRANTY. See http://www.saxproject.org for further information.

    此类包含从显式类名称或基于运行时默认值创建XML读取器的静态方法:

      try {
       XMLReader myReader = XMLReaderFactory.createXMLReader();
     } catch (SAXException e) {
       System.err.println(e.getMessage());
     } 

    与解析器捆绑的分发注意事项:您应该修改无参数createXMLReader的实现,以处理未设置外部配置机制的情况。 该方法应该尽可能地在类路径中返回解析器,即使没有将其类名称绑定到org.xml.sax.driver因此这些配置机制将看到它。

    从以下版本开始:
    1.4,SAX 2.0
    Version:
    2.0.1(sax2r2)
    • 方法详细信息

      • createXMLReader

        public static XMLReader createXMLReader​()
                                         throws SAXException
        已过时。
        获得一个XMLReader的新实例。 此方法使用以下有序查找过程来查找和加载XMLReader实现类:

        1. 如果系统属性org.xml.sax.driver具有值, org.xml.sax.driver其用作XMLReader类名称。
        2. 使用服务提供商装载设施,由定义ServiceLoader类,试图找到并加载服务的实现XMLReader使用current thread's context class loader 如果上下文类加载器为null,则将使用system class loader
        3. 已过时。 在运行时可用的jar文件中的META-INF/services/org.xml.sax.driver文件中查找类名。
        4. 否则,返回系统默认实现。

        API Note:
        在jar文件中META-INF/services/org.xml.sax.driver文件中的类名的过程不符合ServiceLoader定义的服务提供程序加载工具的规范 ,因此不支持模块化。 它从Java SE 9开始弃用,并在将来的版本中被删除。
        结果
        一个新的XMLReader。
        异常
        SAXException - 如果不能识别和实例化默认的XMLReader类。
        另请参见:
        createXMLReader(java.lang.String)
      • createXMLReader

        public static XMLReader createXMLReader​(String className)
                                         throws SAXException
        已过时。
        尝试从类名创建XML阅读器。

        给定一个类名称,该方法尝试加载和实例化该类作为XML读取器。

        请注意,这种方法在不允许调用者(可能是小程序)不允许动态加载类的环境中不可用。

        结果
        一个新的XML阅读器。
        异常
        SAXException - 如果类无法加载,实例化和转换为XMLReader。
        另请参见:
        createXMLReader()