+

Search Tips   |   Advanced Search

IBM Optim pureQuery Runtime

IBM Optim pureQuery Runtime provides Java Persistence API (JPA) with an alternative way to access a database. PureQuery supports static Structured Query Language (SQL). PureQuery is only supported by OpenJPA and WSJPA persistence providers.

JPA in the Java EE and Java SE environments provides optional support for the pureQuery runtime environment. PureQuery is a high performance Java data access platform that helps manage applications that access data. PureQuery provides an alternate set of APIs that can be used instead of JDBC to access the DB2 and Informix database.

To use this feature on the application server, install Data Studio pureQuery runtime version 1.2 or later. If we plan to perform the DB2 bind command from the administrative console, or with the wsadmin tool, we must have pureQuery v1.2 or later. Refer to the IBM Optim pureQuery Runtime information center topic on installing pureQuery Runtime for more information.

Use pureQuery dynamically. The pdqxml file location is specified by the pdqProperties property on the data source or connection URL. See topic, Using pureQuery in dynamic mode.

PureQuery uses DB2 packages. These packages consist of information for one or more SQL statements and are stored in the DB2 catalog. To create the packages, the user must first run the wsdbgen command on a JPA application. The wsdbgen command creates a persistence_unit_name.pdqxml file. This file contains pre-generated SQL statements for Create, Update, Delete, and Retrieve, NamedQueries, and NamedNativeQueries of JPA entities. The persistence_unit_name.pdqxml file must be bound against database. Associated DB2 packages are generated and the SQL statement is started statically at run time. This persistence_unit_name.pdqxml file must be included into the application Java archive (JAR) file.

The application server offers support for static SQL for EJB 2.x and later entity beans with the ejbdeploy SQLj option. With JPA, this feature is offered through pureQuery.

There are several benefits to using pureQuery instead of JDBC and SQLJ. Static SQL offers greater security and control over access to data because applications are only granted authority to execute known SQL. Static SQL offers better resource utilization on the DB2 server because it avoids runtime parsing and optimizing of the SQL statements.

When doing the bind process and when defining the JDBC provider, the following four JAR files must be in the class path:

Read more about the DB2 JAR level compliance for pureQuery at the IBM Support website: System requirements for IBM Optim pureQuery Runtime for Linux, UNIX, and Windows.

Restriction:

Important:


Tasks


  • WAS persistence providers
  • Configure data source JDBC providers to use pureQuery in a Java SE environment
  • wsenhancer command
  • Developing JPA 2.x applications for a Java EE environment
  • Developing JPA 2.x applications for a Java SE environment
  • wsdbgen command
  • IBM Integrated Data Management Information Center
  • System requirements for IBM Optim pureQuery Runtime for Linux, UNIX, and Windows