You can define any number of JDBC javax.sql.DataSource
objects for the application in the configuration file under the element <data-sources>.
Every data source is defined within the <data-sources>
element using the <data-source> element. The <data-source>
element defines a number of attributes, the most important of which are listed
in Table below.

<data-source>
Attributes

Element
Attribute

Description

key

The name used by Action
classes for looking up this connection. The default is org.apache.struts.action.DATA_SOURCE
(defined in the constant org.apache.struts.Globals.DATA_SOURCE_KEY).

type

The name of the actual class that implements the DataSource
interface.

You supply any further configuration information using nested <set-property>
tags. You can use these tags to set JavaBeans properties on the DataSource;
they take property and value
attributes to specify the property to set and the value to which to set it.

The default attribute values for <data-source>
cause it to instantiate a GenericDataSource and give
it the key. The GenericDataSource class wraps an
ordinary JDBC Driver and turns it into a DataSource
with a database connection pool. This class has a number of JavaBean properties
to configure, the most important of which are listed in Table below.

<data-source>
Attributes

Element
Attribute

Description

description

A description of this DataSource.

driverClass

The fully qualified JDBC Driver
class used to access the database.

url

The JDBC URL used to access the database.

user

The username used to log into the database.

password

The password used to log into the database.

maxCount

The maximum number of connections in the
connection pool.

readOnly

If true, the Connections
returned by the DataSource re read-only; this
has performance advantages with some databases.

autoCommit

If true, the Connections
returned by the DataSource automatically
commit the transaction after every SQL statement.

The following excerpt illustrates how you'll use these
attributes to define a DataSource for the pizza
MySQL database: