可在应用程序中嵌入 Java™ 结构化查询语言 (SQLJ) 语句可以最大程度地提高数据库事务的效率。必须先部署应用程序并定制所创建的 SQLJ 概要文件,应用程序才能使用 SQLJ。您可以先使用 Rational® Application Developer 或 DB2® SQLJ 转换程序来转换应用程序,然后再将其部署到应用程序服务器。
开始之前
使用 Rational Application Developer 或另一款开发工具来创建 SQLJ 应用程序。
关于此任务
要部署未使用容器管理的持久性的 SQLJ 应用程序,请先转换该 SQLJ
应用程序,以便针对应用程序服务器环境对其进行配置。完成转换后,请通过进行脚本编制或使用
db2sqljcustomizer 工具在应用程序服务器中定制 SQLJ 概要文件。
使用 bean 管理的持久性的应用程序的 SQLJ 支持包括以下功能:
- 使用管理控制台或通过进行脚本编制来定制和绑定 SQLJ 概要文件。
- 再次定制和绑定 SQLJ 应用程序而不重新安装应用程序。
过程
- 可选: 创建 .java 文件的备份副本。例如,如果文件名为 MyServlet.java,请将
MyServlet.java 复制为 MyServlet.java.bkup。
- 可选: 将 .java 文件重命名为具有 .sqlj 扩展名的文件名。例如,如果应用程序是名为 MyServlet.java 的 Servlet,请将
MyServlet.java 重命名为 MyServlet.sqlj。
- 可选: 编辑 SQLJ 文件,以便将 JDBC 语法转换为 SQLJ 语法。 使用 SQLJ 时,如果要使应用程序服务器的连接管理功能正常工作,请指定正确的连接上下文。
例如,将下列 JDBC 操作:
Connection con = dataSource.getConnection();
Statement stmt = con.createStatement();
stmt.execute("INSERT INTO users VALUES (1, 'user1')");
con.commit();
转换为下列 SQLJ:
// At the top of the file and just below the import statements, define Connection_Context
#sql context Connection_context;
.
.
Connection con = dataSource.getConnection();
.
.
Connection_context ctx1 = new Connection_context(con);
.
.
#sql [ctx1] {INSERT INTO users VALUES (1, 'user1')};
.
.
con.commit(); ctx1.close();
运行 SQLJ 转换程序时,所创建的
.java 文件将与旧的
.java 文件同名。这允许您无缝转换至 SQLJ 技术。
- 从 DB2 安装中,将 sqlj.zip 文件复制到工作站上的目录中。修改企业 Bean Java 归档 (JAR) 文件项目的 Java 构建路径,使其包括 sqlj.zip 文件。
- 使用 Rational Application Developer 或 DB2 SQLJ 转换程序来自动转换 SQLJ。
- 使用 Rational Application Developer:
- 在“项目导航器”中,右键单击 JAR 项目并选择添加 SQLJ 支持...。
- 选中需要 SQLJ 支持的应用程序所对应的复选框。
- 在 SQLJ JAR 文件字段中,输入先前复制到工作站中的 sqlj.zip 文件的标准路径。
- 单击完成。
- 导出企业归档 (EAR) 文件。
- 使用 DB2 SQLJ 转换程序。此工具创建
.java 版本的 .sqlj 文件和带有 .ser 扩展名的序列化概要文件以用于后续处理。有关 SQLJ
转换程序工具的更多信息,请参阅 DB2 文档。
- 对企业应用程序的 JAR 文件进行打包。
- 将该应用程序安装到应用程序服务器,或者使用 db2sqljcustomize 工具来定制概要文件。
- 根据应用程序服务器来定制概要文件。
- 将企业 Bean、Servlet 和任何 .ser 文件的 JAR 文件打包成企业归档。
- 在应用程序服务器中安装应用程序,并使用管理控制台或 wsadmin 工具来定制 SQLJ 概要文件。
避免故障: 在管理控制台中的应用程序安装过程中,请不要选择
部署企业 Bean。如果从管理控制台重新部署企业 Bean,那么将丢失您已进行的定制更改。
gotcha
应用程序服务器提供了对
SQLJ 应用程序的增强支持。请在应用程序服务器中安装 SQLJ 应用程序,您可以通过管理控制台或进行脚本编制来定制和绑定 SQLJ 概要文件:- 要使用管理控制台来定制 SQLJ 概要文件,请参阅“定制和绑定 Java 结构化查询语言 (SQLJ) 应用程序的概要文件”主题。
- 要通过脚本编制来定制 SQLJ 概要文件,请参阅“AdminTask 对象的应用程序管理命令组”主题。
- 要使用 db2sqljcustomize 工具,请参阅“使用 db2sqljcustomize 工具来定制和绑定 SQLJ 概要文件”主题。