Database AccessWith Integrated Transaction Manager
Both the JDBC and NAS APIs rely on the Data Access Engine to interact with database drivers. NAS provides native support for the following database drivers: Oracle, DB2, Informix, Sybase, and Microsoft SQLServer. The transaction management system also includes the Java Transaction API (JTA). JTA specifies local Java interfaces between the transaction manager the other transaction elements (which include NAS and the transactional application). JTA provides a Java mapping of the industry-standard X/Open XA protocol, which is used by the transaction manager. Local TransactionsNative to a database and are restricted within a single process. Local transactions can work against only a single backend. Local transactions are typically demarcated using JDBC APIs. Global TransactionsManaged and coordinated by a Transaction Manager and can span multiple databases and processes. A Transaction Manager typically uses the XA protocol to interact with the database back ends. Global transactions span multiple databases (optionally of different types). Global transactions occur using a two-phase commit from the transaction manager built into NAS. Local transactions involve access to a single database. They provide better application performance because they are less complex. In NAS 4.0, global transactions can only be instantiated declaratively through EJBs. By contrast, local transactions can only be started programmatically from servlets, JSPs, or EJBs.
|