模块  java.xml
软件包  org.xml.sax.helpers

Class XMLReaderFactory


  • @Deprecated(since="9")
    public final class XMLReaderFactory
    extends Object
    Deprecated.
    It is recommended to use SAXParserFactory instead.
    用于创建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
    • 方法详细信息

      • createXMLReader

        public static XMLReader createXMLReader()
                                         throws SAXException
        Deprecated.
        获得XMLReader的新实例。 此方法使用以下有序查找过程来查找和加载XMLReader实现类:
        1. 如果系统属性org.xml.sax.driver具有值, org.xml.sax.driver其用作XMLReader类名。
        2. 使用由ServiceLoader类定义的服务提供者加载工具尝试使用current thread's context class loader查找并加载服务XMLReader实现 如果上下文类加载器为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
        Deprecated.
        尝试从类名创建XML阅读器。

        给定类名,此方法尝试将类加载并实例化为XML读取器。

        请注意,此方法不适用于不允许调用者(可能是applet)动态加载类的环境。

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