java.lang.Object com.ibm.etools.sqltoxml.SQLToXML
公用类 SQLToXML 扩展 java.lang.Object
此类提供了应用程序(例如,“SQL 至 XML”向导)用来执行数据库查询的方法。获取的查询结果具有 XML 格式。(可选)可以将结果生成相应的 DTD、XML 模式和 XSL 文件。
构造函数 | 描述 |
---|---|
SQLToXML(QueryProperties) | 这是唯一的构造函数。 |
方法 | 描述 |
---|---|
void execute() | 根据作为构造函数自变量给定的 QueryProperties 中的信息来执行查询。 |
void execute(PrintWriter, , String, PrintWriter) 不推荐。 | 根据 QueryProperties 中的信息来执行查询并且将结果写至 PrintWriter 和/或文件中。 |
void execute(String, PrintWriter, String, String, PrintWriter) 不推荐。 | 根据 QueryProperties 中的信息来执行查询并且将结果写至 PrintWriter 和/或文件中。 |
void execute(String, String, String, String) 不推荐。 | 根据 QueryProperties 中的信息来执行查询并且将结果写至文件中。 |
void finalize() | 关闭连接(如果这是由 SQLToXML 创建的话)。 |
Connection getConnection() | 返回数据库连接。 |
Document getCurrentDocument() | 返回 XML 文档,它是最近调用 execute() 方法获得的结果。 |
Document[] getCurrentDocuments() | 返回 XML 文档数组,它是最近调用 execute() 方法获得的结果。 |
String getDTDFile() | 返回要生成的当前 DTD 文件名。 |
String getNextAllQuery() | 返回有效的查询字符串。 |
Vector getNextQueries() | 返回有效的查询字符串的序列。 |
String getParameters() | 返回 where 子句的参数值。 |
String getXMLFile() | 返回要生成的当前 XML 文件名。 |
PrintWriter getXMLWriter() | 返回 XML 输出的当前 PrintWriter。 |
String getXSDFile() | 返回要生成的当前 XML 模式文件名。 |
String getXSLFile() | 返回要生成的当前 XSL 文件名。 |
PrintWriter getXSLWriter() | 返回 XSL 输出的当前 PrintWriter。 |
void setConnection(Connection) | 提供要用来生成 XML 文件的 JDBC 连接。 |
void setDTDFile(String) | 设置要生成的 DTD 文件名。 |
void setGenDocType(Boolean) 不推荐。 | 控制是否为了进行验证而生成 DTD 或 XML 模式文件。 |
void setIndenting(Boolean) | 将缩进设置为“打开”和“关闭”。 |
void setMaxRows(int) | 将要在生成的 XML 中检索的最大行数的限制设置为最大值。 |
void setParameters(String) | 设置 where 子句的参数值。 |
void setQueryProperties(QueryProperties) | 覆盖当前的 queryProperties。 |
void setXMLFile(String) | 设置要生成的 XML 文件名。 |
void setXMLWriter(String) | 设置生成的 XML 所指向的 PrintWriter。 |
void setXSDFile(String) | 设置要生成的 XML 模式文件名。 |
void setXSLFile(String) | 设置要生成的 XSL 文件名。 |
void setXSLWriter(String) | 设置生成的 XSL 所指向的 PrintWriter。 |
从类 java.lang.Object 继承的方法 |
equals、getClass、hashCode、notify、notifyAll、toString、wait、wait 和 wait |
public void execute() throws java.lang.Exception
根据作为构造函数自变量给定的 QueryProperties 中的信息来执行查询。可以生成的构件包括 XML、XML 模式、DTD 和 XSL 文件。要生成除 XML 之外的构件,在使用此方法之前需要通过使用相关集 accessor 来提供文件名或 PrintWriter。另外,可以通过 getCurrentDocument() 或 getCurrentDocuments() 方法调用来获得作为 DOM 文档的 XML 输出。
抛出:java.lang.Exception - 当执行失败时抛出。
public void execute(PrintWriter xml, String dtdfile, String xsdfile, PrintWriter xsl) throws Exception
不推荐。根据 QueryProperties 中的信息来执行查询,并且将结果写至 PrintWriter 和/或文件。当除“xml”之外的任何自变量为空时,则不为该特定自变量生成结果。并且,如果指定了 dtdfile 和 xsdfile,则将只生成 xsdfile。
public void execute(String params, PrintWriter xml, String dtdfile, String xsdfile, PrintWriter xsl) throws Exception
不推荐。根据 QueryProperties 中的信息来执行查询,并且将结果写至 PrintWriter 和/或文件。当除“xml”之外的任何自变量为空时,则不为该特定自变量生成结果。并且,如果同时指定 dtdfile 和 xsdfile,则只生成 xsdfile。当查询包含 where 子句并在 String 自变量“params”中给出了它的约束时,使用此方法。这些约束参数在自变量中是使用逗号(,)来定界的。
public void execute(String xmlfile, String dtdfile, String xsdfile, String xslfile) throws Exception
不推荐。根据 QueryProperties 中的信息来执行查询并且将结果写至文件。当除“xml”之外的任何自变量为空时,则不为该特定自变量生成结果。并且,如果指定了 dtdfile 和 xsdfile,则将只生成 xsdfile。
public void finalize()
关闭连接(如果这是由 SQLToXML 创建的话)。如果该连接是以外部方式提供的(通过使用 setConnection()),则不关闭该连接。当对 SQLToXML 进行垃圾回收时,JVM 调用此方法。
public Connection getConnection() throws Exception
返回数据库连接。如果不存在连接,则此方法使用来自 QueryProperties 的值创建新连接。
public Document getCurrentDocument()
返回 XML 文档,它是最近调用 execute() 方法获得的结果。如果使用了带有 RECURSIVE 选项的 GENERATE_ID_AND_IDREF,则将返回主 XML 文档。
public Document[] getCurrentDocuments()
返回 XML 文档数组,它是最近调用 execute() 方法获得的结果。除非使用了带有 RECURSIVE 选项的 GENERATE_ID_AND_IDREF,否则,结果将只包含一个文档。
public java.lang.String getDTDFile()
返回要生成的当前 DTD 文件名。
public String getNextAllQuery()
返回有效的查询字符串。只有在下列情况下,此方法才返回有效的查询字符串:
1) 格式选项为 ID_AND_IDREF,并且 2) 递归选项为“TRUE”例如,如果当前查询中的一列是表 A 的主键列的外键,则将返回字符串“select * from A”。有关此方法的典型用法的信息,参阅样本 servlet XMLIntegratorServlet.java。
public Vector getNextQueries()
返回有效的查询字符串的序列。只有在下列情况下,此方法才返回有效查询字符串的向量(Vector):
1) 格式选项为 ID_AND_IDREF,并且 2) 递归选项为“TRUE”例如,如果当前查询中的一列是表 A 的主键列标识(值为 123)的外键,这将返回字符串“select * from A where ID = 123”。有关此方法的典型用法的信息,参阅样本 servlet XMLIntegratorServlet.java。
public java.lang.String getParameters()
返回 where 子句的参数值。
public java.lang.String getXMLFile()
返回要生成的当前 XML 文件名。
public java.io.PrintWriter getXMLWriter()
返回 XML 输出的当前 PrintWriter。
public java.lang.String getXSDFile()
返回要生成的当前 XML 模式文件名。
public java.lang.String getXSLFile()
返回要生成的当前 XSL 文件名。
public java.io.PrintWriter getXSLWriter()
返回 XSL 输出的当前 PrintWriter。
public void setConnection(Connection jdbcConnection)
提供要用于生成 XML 文件的 JDBC 连接。当应用程序要使用自己的连接管理机制(如连接池)时,此方法变得很有用。如果在调用任何 execute() 方法之前未调用此方法,则 SQLToXML 使用 QueryProperties 的值来创建它自己的连接。
public void setDTDFile(java.lang.String filename) throws java.lang.Exception
设置要生成的 DTD 文件名。此方法不能与 setXSDFile(String) 一起使用。
public void setGenDocType(Boolean value)
不推荐。控制是否为了进行验证而生成 DTD 或 XML 模式文件。缺省情况下,该值设置为 true(对于开发时),或设置为 false(对于运行时)。对运行时应用程序(例如,servlet)将该值设置为 true 将导致性能有所降低。
public void setIndenting(Boolean flag)
将缩进设置为“打开”和“关闭”。缺省情况下,将缩进设置为“打开”。
public void setMaxRows(int max)
将对要在生成的 XML 中检索的最大行数的限制设置为最大值。缺省情况下,没有任何限制。
public void setParameters(java.lang.String parameters)
select * from EMPLOYEE where EMP_NO = :empno在以上示例中,在参数自变量中给出了要替换 :empno 的值。如果有多个约束值,则它们将象以下示例中一样在参数中使用逗号(,)定界。
String params = "87316,'Toronto'"; sqltoxml.setParameters(params);
public void setQueryProperties(QueryProperties qProperties)
覆盖当前的 queryProperties。
public void setXMLFile(java.lang.String filename) throws java.lang.Exception
设置要生成的 XML 文件名。此方法不能与 setXMLWriter(PrintWriter) 一起使用。
public void setXMLWriter(java.io.PrintWriter writer) throws java.lang.Exception
设置生成的 XML 所指向的 PrintWriter。此方法不能与 setXMLFile(String) 一起使用。
public void setXSDFile(java.lang.String filename) throws java.lang.Exception
设置要生成的 XML 模式文件名。此方法不能与 setDTDFile(String) 一起使用。
public void setXSLFile(java.lang.String filename) throws java.lang.Exception
设置要生成的 XSL 文件名。此方法不能与 setXSLWriter(PrintWriter) 一起使用。
public void setXSLWriter(java.io.PrintWriter writer) throws java.lang.Exception
设置生成的 XSL 所指向的 PrintWriter。此方法不能与 setXSLFile(String) 一起使用。