Connection caching allows EJB Server components to share pools of preallocated connections to the database server, avoiding the overhead imposed when each instance of a component creates a separate connection. Components that support transactions must use a connection from an EJB Server connection cache to interact with the database.