IBM® Optim pureQuery Runtime provides Java Persistence API (JPA) with an alternative way to access a database. PureQuery supports static Structured Query Language (SQL).
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 Java Database Connectivity (JDBC) to access the DB2® and Informix® database.
To use this feature on the application server, you must install Data Studio pureQuery runtime version 1.2 or later. If you plan to perform the DB2 bind command from the administrative console, or with the wsadmin tool, you must have pureQuery v1.2 or later. Refer to the IBM Optim pureQuery Runtime information center topic on installing pureQuery Runtime for more information.
You can use pureQuery dynamically. The pdqxml file location is specified by the pdqProperties property on the data source or connection URL. For more information, see the 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 Enterprise JavaBeans (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.
WebSphere® Application Server support for pureQuery
In this information ...Subtopics
Related tasks
| IBM Redbooks, demos, education, and more(Index) |