JDBC is the standard API for accessing relational databases in the Java platform. It provides a vendor-neutral abstraction for accessing databases. The JDBC interfaces are implemented for every major database, and these implementations are distributed as third-party drivers. The JDBC specification has evolved over time to support many features, including batched execution of SQL commands, statement caching, connection pooling, transactions, and disconnected rowsets. The current release, JDBC 3.0, is included in your JDK 1.4 distribution. The JDBC API provides a standard way for Java applications to interact with a relational database. It includes the following two packages:
java.sql
This package contains the Java classes and interfaces that let you connect to a database, run SQL commands, insert and update rows, retrieve results, and access database metadata.
javax.sql
This package contains the Java classes and interfaces that allow you to utilize the data source abstractions, pooled connections, distributed transactions, and rowsets.
WebLogic offers a number of services that use the JDBC, including container-managed entity beans, persistent messages, durable topic subscriptions, and JDBC-based HTTP session-state replication.
This chapter focuses on WebLogic's support for JDBC. We look at the various JDBC drivers that are compatible with WebLogic. We examine how WebLogic lets you configure and monitor a connection pool, or a pool of reusable connections to the database. WebLogic also lets you set up a pool of multiple connection pools, or a multipool. A multipool allows you to achieve high availability and load balancing across connection requests, even in a single-server environment. In addition, we examine how to set up a data source that you can use to dip into a JDBC pool.
We look at WebLogic's support for statement caching, which can offer a significant performance boost. We cover WebLogic's support for the wrapper drivers, which provide clients with an alternative access route to the configured JDBC pools. We also explain how data sources and connection pools should be set up in a clustered environment and how multi-tier JDBC connections support high availability and load balancing.
The JDBC 2.0 API introduces the rowset API as a standard extension. WebLogic provides a disconnected (cached) rowset implementation, which acts as a serializable container for transporting row data. It also supports various synchronization policies that determine how the data in a rowset should be synchronized with the underlying database. In addition, we look at how to export (or import) the rowset data and metadata to an XML document and schema.
Introduction
Web Applications
Managing the Web Server
Using JNDI and RMI
JDBC
Transactions
J2EE Connectors
JMS
JavaMail
Using EJBs
Using CMP and EJB QL
Packaging and Deployment
Managing Domains
Clustering
Performance, Monitoring, and Tuning
SSL
Security
XML
Web Services
JMX
Logging and Internationalization
SNMP