public class ConnectPool extends Object
Задачи
| Modifier and Type | Field and Description |
|---|---|
protected LinkedBlockingQueue<DataEvent> |
eventQueue |
protected DataEventSupport |
eventSupport |
protected WeakHashMap<DataSource,ConnectOptions> |
options |
protected EventList<ConnectionPoolService> |
services |
protected WeakHashMap<Statement,Long> |
statementCreateTime |
protected WeakHashMap<Statement,Connection> |
statements |
| Constructor and Description |
|---|
ConnectPool()
Конструктор по умолчанию
|
ConnectPool(ConnectionPoolService... services)
Конструктор
|
| Modifier and Type | Method and Description |
|---|---|
InvokeActivityStat |
activityStatOf(CallableStatement stmt)
Возвращает статистику активности запроса
|
InvokeActivityStat |
activityStatOf(Connection conn)
Возвращает статистику активности соединения
|
InvokeActivityStat |
activityStatOf(PreparedStatement stmt)
Возвращает статистику активности запроса
|
InvokeActivityStat |
activityStatOf(Statement stmt)
Возвращает статистику активности запроса
|
void |
addDataEvent(DataEvent ev) |
Closeable |
addDataEventListener(DataEventListener ls) |
Closeable |
addDataEventListener(DataEventListener ls,
boolean weak) |
void |
cleanup(Connection conn)
Удаляет ссылки и связанные объекты
|
void |
closeAll()
Закрывает все объекты: statements, connections.
|
void |
closeAllConnections(boolean addEvents)
Закрытие всех соединений с СУБД
|
void |
closeAllStatements(boolean addEvents)
Закрытие всех запросов.
|
void |
closeShared(Connection conn)
Закрывает shared соединение с базой данных
|
Connection |
connect(String source)
Устанавливает соединение с БД
|
Connection |
connect(String source,
String username,
String password)
Устанавливает соединение с БД
|
long |
createTimeOf(Connection conn)
Возвращает время создания соединения
|
protected void |
finalize() |
void |
fireDataEvent(DataEvent event) |
void |
fireEventQueue() |
Set<Connection> |
getConnections()
Возвращает соединения с СУБД.
|
Set<Connection> |
getConnections(boolean autoCreateProxy)
Возвращает соединения с СУБД
|
Map<DataSource,Set<Connection>> |
getConnectionsMap()
Возвращает карту источников данныи и их соединений.
|
Map<DataSource,Set<Connection>> |
getConnectionsMap(boolean autoCreateProxy)
Возвращает карту источников данныи и их соединений
|
DataEventListener[] |
getDataEventListeners() |
ConnectOptions |
getDefaultOptions()
Опции соединения с БД по умолчани.
|
int |
getId()
Возвращает идентификатор (в пределах экземпляра JVM) пула
|
WeakHashMap<Object,InvokeActivityStat> |
getInvokeStats() |
Set<Connection> |
getOpenConnections(boolean autoCreateProxy)
Возвращает открытиые соединения с СУБД
|
int |
getOpenConnectionsCount()
Возвращает кол-во открытых соединений
|
EventList<ConnectionPoolService> |
getServices()
Возвращает список сервисов (расширений) пула
|
Set<Connection> |
getSourceConnections()
Возвращает соединения с СУБД.
|
Map<DataSource,Set<Connection>> |
getSourceConnectionsMap()
Возвращает карту источников данныи и их соединений.
|
EventMap<String,DataSource> |
getSources()
Возвращает карту именнованных источников данных
|
Set<Statement> |
getStatements(boolean autoCreateProxy)
Возвращает текущий набор Statement (запросов)
|
Map<Connection,Set<Statement>> |
getStatementsMap(boolean autoCreateProxy)
Возвращает карту Соединение / Запрос
|
Timer |
getTimer()
Возвращает таймер обслуживающий задачи утилизации/освобождения ресурсов
|
int |
getTotalConnectionsCount()
Возвращает общее кол-во соединений с СУБД
|
boolean |
hasDataEventListener(DataEventListener ls) |
static List<ConnectPool> |
instances()
Возвращает списиок доступных экземпляров
|
boolean |
isProxy(Object conn)
Проверяет что указанный объект является proxy
|
boolean |
isShared(Connection conn)
Проверяет является ли соединение shared
|
boolean |
isSkipRegistered()
Указывает пропускать уже зарегистрированные соединения или перезаписывать существующие.
|
String |
nameOf(Connection conn)
Возвращает имя под которым зарегистрированно соединение с СУБД
|
String |
nameOf(DataSource ds)
Возвращает имя под которым зарегистрированн источник данных
|
Set<String> |
namesOf(Connection conn)
Возвращает имя под которым зарегистрированно соединение с СУБД
|
Set<String> |
namesOf(DataSource ds)
Возвращает имя под которым зарегистрированн источник данных
|
ConnectOptions |
optionsOf(Connection conn)
Возвращает опции соединения для указанного коннекта
|
ConnectOptions |
optionsOf(DataSource ds)
Возвращает опции соединения с БД
|
ConnectOptions |
optionsOf(Statement st)
Возвращает опции соединения для указанного запроса
|
CallableStatement |
proxy(Connection conn,
CallableStatement st)
Создает proxy для PreparedStatement и добавляет StatementTracker
|
Connection |
proxy(Connection conn,
ConnectOptions copts)
Создает (если еще не создан) proxy для соединения с БД
|
PreparedStatement |
proxy(Connection conn,
PreparedStatement st)
Создает proxy для PreparedStatement и добавляет StatementTracker
|
Statement |
proxy(Connection conn,
Statement st)
Создает proxy для Statement и добавляет StatementTracker
|
Statement |
proxy(Method meth,
Connection conn,
Statement st)
Создает proxy для Statement и добавляет StatementTracker
|
GenericProxy.Builder |
proxyBuilder(Method meth,
Statement st)
Создает строителя для Statment
|
GenericProxy.Builder |
proxyBuilder(Statement st)
Создает строителя для Statment на основе типа Statment
|
void |
registerSource(String name,
DataSource ds)
Регистрирует источник данных
|
void |
registerSource(String name,
DataSource ds,
ConnectOptions copt)
Регистрирует источник данных.
|
void |
registerStatement(Connection conn,
Statement st)
Регистрация созданного запроса (Statement)
|
void |
removeClosedConnections()
Удаляет закрытые соединения из памяти
|
void |
removeClosedConnections(boolean addEvents)
Удаляет закрытые соединения их памяти
|
void |
removeClosedStatements()
Удаляет закрытые запросы из памяти
|
void |
removeClosedStatements(boolean addEvents)
Удаляет закрытые запросы из памяти
|
void |
removeDataEventListener(DataEventListener ls) |
void |
setSkipRegistered(boolean skipRegistered)
Указывает пропускать уже зарегистрированные соединения или перезаписывать существующие.
|
void |
shutdown()
Закрывает все соединения в пуле
|
void |
shutdown(boolean addEvents)
Закрытие всех запросов, соединений и остановка фоновых заданий.
|
CallableStatement |
sourceOf(CallableStatement conn)
Возвращает исходный объект для указанного proxy объекта
|
<T> T |
sourceOf(Class<? extends T> cls,
T obj)
Возвращает исходный объект для указанного proxy объекта
|
Connection |
sourceOf(Connection conn)
Возвращает исходный объект для указанного proxy объекта
|
PreparedStatement |
sourceOf(PreparedStatement conn)
Возвращает исходный объект для указанного proxy объекта
|
Statement |
sourceOf(Statement conn)
Возвращает исходный объект для указанного proxy объекта
|
protected final transient DataEventSupport eventSupport
protected final transient LinkedBlockingQueue<DataEvent> eventQueue
protected final EventList<ConnectionPoolService> services
protected final WeakHashMap<Statement,Connection> statements
protected final WeakHashMap<Statement,Long> statementCreateTime
protected WeakHashMap<DataSource,ConnectOptions> options
public ConnectPool()
public ConnectPool(ConnectionPoolService... services)
services - сервисы расширенияpublic Closeable addDataEventListener(DataEventListener ls, boolean weak)
public Closeable addDataEventListener(DataEventListener ls)
public void removeDataEventListener(DataEventListener ls)
public boolean hasDataEventListener(DataEventListener ls)
public DataEventListener[] getDataEventListeners()
public void fireDataEvent(DataEvent event)
public void addDataEvent(DataEvent ev)
public void fireEventQueue()
public int getId()
public static List<ConnectPool> instances()
public EventList<ConnectionPoolService> getServices()
public Timer getTimer()
protected void finalize()
throws Throwable
public void closeAll()
public void closeAllStatements(boolean addEvents)
addEvents - true - Добавить сообщения в очередь.public void closeShared(Connection conn) throws SQLException
conn - shared соединение с базой данныхSQLException - Ошибка при работе с БДpublic boolean isShared(Connection conn)
conn - соединение с бдpublic void closeAllConnections(boolean addEvents)
addEvents - true - Добавить сообщения в очередь.public void shutdown()
public void shutdown(boolean addEvents)
addEvents - true - Добавить сообщения в очередь.public EventMap<String,DataSource> getSources()
public boolean isSkipRegistered()
registerSource(java.lang.String, javax.sql.DataSource),
registerSource(java.lang.String, javax.sql.DataSource, xyz.cofe.sql.ConnectOptions)public void setSkipRegistered(boolean skipRegistered)
skipRegistered - true - пропускать (по умолчанию)registerSource(java.lang.String, javax.sql.DataSource),
registerSource(java.lang.String, javax.sql.DataSource, xyz.cofe.sql.ConnectOptions)public void registerSource(String name, DataSource ds)
name - Имя истоничкаds - Источник данныхregisterSource(java.lang.String, javax.sql.DataSource, xyz.cofe.sql.ConnectOptions)public void registerSource(String name, DataSource ds, ConnectOptions copt)
Если источник уже зарегистрирован и свойство skipRegistered = true, то новых источник не регистрируется.
Если skipRegistered = false, то источник данных регистриуется (перетерая ранее зарегистрированный одноименный, если есть)
name - Имя истоничкаds - Источник данныхcopt - Опции соединения или nullpublic Set<String> namesOf(DataSource ds)
ds - источник данныхpublic String nameOf(DataSource ds)
ds - источник данныхpublic Set<String> namesOf(Connection conn)
conn - соединение с СУБДpublic String nameOf(Connection conn)
conn - соединение с СУБДpublic void cleanup(Connection conn)
conn - Соединениеpublic Set<Connection> getConnections(boolean autoCreateProxy)
autoCreateProxy - true - Автоматически создавать PROXY объектpublic Set<Connection> getSourceConnections()
Аналогично: getConnections(false)
public Set<Connection> getConnections()
Аналогично: getConnections(true)
public Map<DataSource,Set<Connection>> getConnectionsMap(boolean autoCreateProxy)
autoCreateProxy - true - Автоматически создавать PROXY для соединенийpublic Map<DataSource,Set<Connection>> getSourceConnectionsMap()
Аналогично: getConnectionsMap(false)
public Map<DataSource,Set<Connection>> getConnectionsMap()
Аналогично: getConnectionsMap(true)
public int getTotalConnectionsCount()
public Set<Connection> getOpenConnections(boolean autoCreateProxy)
autoCreateProxy - true - автоматически создавать PROXYpublic int getOpenConnectionsCount()
public GenericProxy.Builder proxyBuilder(Method meth, Statement st)
meth - Метод из Connection, который вызвал создание Statementst - Исходный StatementConnection.createStatement(int, int, int),
Connection.prepareStatement(java.lang.String),
Connection.prepareCall(java.lang.String)public GenericProxy.Builder proxyBuilder(Statement st)
st - Исходный StatementStatement,
PreparedStatement,
CallableStatementpublic Statement proxy(Method meth, Connection conn, Statement st)
meth - Метод из Connection, который вызвал создание Statementconn - Содение с БДst - StatementproxyBuilder(java.lang.reflect.Method, java.sql.Statement),
Connection.createStatement(int, int, int),
Connection.prepareStatement(java.lang.String),
Connection.prepareCall(java.lang.String)public Statement proxy(Connection conn, Statement st)
conn - Содение с БДst - StatementproxyBuilder(java.sql.Statement),
StatementTracker,
Connection.createStatement(int, int, int),
Connection.prepareStatement(java.lang.String),
Connection.prepareCall(java.lang.String)public PreparedStatement proxy(Connection conn, PreparedStatement st)
conn - Содение с БДst - PreparedStatementproxyBuilder(java.sql.Statement),
StatementTrackerpublic CallableStatement proxy(Connection conn, CallableStatement st)
conn - Содение с БДst - CallableStatementproxyBuilder(java.sql.Statement),
StatementTrackerpublic Set<Statement> getStatements(boolean autoCreateProxy)
autoCreateProxy - true - автоматически создавать proxy и его возвращать, если еще не созданpublic Map<Connection,Set<Statement>> getStatementsMap(boolean autoCreateProxy)
autoCreateProxy - true - автоматически создавать proxy и его возвращать, если еще не созданpublic void registerStatement(Connection conn, Statement st)
conn - Соединение с БДst - Запросpublic long createTimeOf(Connection conn)
conn - соединениеpublic ConnectOptions getDefaultOptions()
public WeakHashMap<Object,InvokeActivityStat> getInvokeStats()
public InvokeActivityStat activityStatOf(Connection conn)
conn - соединениеpublic InvokeActivityStat activityStatOf(Statement stmt)
stmt - Запросpublic InvokeActivityStat activityStatOf(PreparedStatement stmt)
stmt - Запросpublic InvokeActivityStat activityStatOf(CallableStatement stmt)
stmt - Запросpublic ConnectOptions optionsOf(DataSource ds)
ds - Источник данныхpublic ConnectOptions optionsOf(Connection conn)
conn - коннект к БДpublic ConnectOptions optionsOf(Statement st)
st - запросpublic Connection sourceOf(Connection conn)
conn - proxy объектpublic CallableStatement sourceOf(CallableStatement conn)
conn - proxy объектpublic Statement sourceOf(Statement conn)
conn - proxy объектpublic PreparedStatement sourceOf(PreparedStatement conn)
conn - proxy объектpublic <T> T sourceOf(Class<? extends T> cls, T obj)
T - Интересующий тип объектаcls - Тип интересующего объектаobj - proxy объектpublic boolean isProxy(Object conn)
conn - проверяемый объектpublic Connection proxy(Connection conn, ConnectOptions copts)
conn - Соединение с БДcopts - Опцииpublic Connection connect(String source) throws SQLException
source - имя соединенияSQLException - Ошибка SQLpublic Connection connect(String source, String username, String password) throws SQLException
source - имя соединенияusername - Имя пользователя БДpassword - Пароль пользователя БДSQLException - Ошибка SQLpublic void removeClosedConnections()
public void removeClosedConnections(boolean addEvents)
addEvents - true - добавляет событие в очередьpublic void removeClosedStatements()
public void removeClosedStatements(boolean addEvents)
addEvents - true - добавляет событие в очередьCopyright © 2019. All rights reserved.