- All Superinterfaces:
NamedService
- All Known Subinterfaces:
CloseableJdbcConnectionPool
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
JDBC connection pool.
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic class
JdbcConnectionPool.BuilderBase<B extends JdbcConnectionPool.BuilderBase<B,
T>, T extends JdbcConnectionPool> Base fluent API builder forJdbcConnectionPool
. -
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionReturn a connection from the pool.static JdbcConnectionPool
Create a JDBC connection pool from provided configuration.default String
dbType()
The type of this database.default String
name()
Name of this implementation, as provided inConfiguredProvider.create(Config, String)
.default String
type()
Type of this implementation, to distinguish instances of same type, with differentNamedService.name()
.
-
Field Details
-
DEFAULT_DB_TYPE
Default JDBC connection pooldbType()
value.- See Also:
-
-
Method Details
-
create
Create a JDBC connection pool from provided configuration.Optional configuration parameters key default value description url JDBC URL of the database - this property is required when only configuration is used. Example: jdbc:mysql://127.0.0.1:3306/pokemon?useSSL=false
username Username used to connect to the database password Password used to connect to the database - Parameters:
config
- configuration of connection pool- Returns:
- a new instance configured from the provided config
-
connection
Connection connection()Return a connection from the pool. The call toConnection.close()
should return that connection to the pool. The connection pool should handle capacity issues and timeouts using unchecked exceptions thrown by this method.- Returns:
- a connection read to execute statements
-
dbType
The type of this database. This could be"jdbc:mysql"
, etc. Default value is just"jdbc"
but implementing class should set something more specific.- Returns:
- type of this database
-
name
Description copied from interface:NamedService
Name of this implementation, as provided inConfiguredProvider.create(Config, String)
.- Specified by:
name
in interfaceNamedService
- Returns:
- name of this service
-
type
Description copied from interface:NamedService
Type of this implementation, to distinguish instances of same type, with differentNamedService.name()
. Use for exampleConfiguredProvider.configKey()
to define the type.- Specified by:
type
in interfaceNamedService
- Returns:
- type of this service
-