public class MysqlConnection
extends java.lang.Object
implements java.sql.Connection
说明:MysqlConnection 类是非线程安全的,不允许多个线程使用同一个实例。
| 限定符和类型 | 字段和说明 |
|---|---|
protected java.lang.String |
currentDatabaseName
当前连接使用的数据库名称
|
protected DatabaseMonitor |
databaseMonitor
当前连接使用的 Mysql 数据库信息监控器
|
protected com.heimuheimu.naivemonitor.monitor.ExecutionMonitor |
executionMonitor
当前连接使用的 SQL 操作执行信息监控器
|
protected MysqlServerStatusInfo |
lastServerStatusInfo
当前连接最新的 Mysql 服务端状态信息
|
protected MysqlChannel |
mysqlChannel
与 Mysql 服务进行数据交互的管道
|
protected int |
readOnlyFlag
当前连接是否处于只读模式标记,在未实际获取前,值为
Integer.MIN_VALUE |
protected long |
slowExecutionThreshold
执行 Mysql 命令过慢最小时间,单位:纳秒
|
protected long |
timeout
SQL 执行超时时间,单位:毫秒,如果等于 0,则没有超时时间限制
|
protected int |
transactionIsolation
当前连接使用的事务等级,在未实际获取前,值为
Integer.MIN_VALUE |
| 构造器和说明 |
|---|
MysqlConnection(ConnectionConfiguration configuration,
int timeout,
int slowExecutionThreshold,
UnusableServiceNotifier<MysqlConnection> unusableServiceNotifier)
构造一个 Mysql 数据库连接。
|
| 限定符和类型 | 方法和说明 |
|---|---|
void |
abort(java.util.concurrent.Executor executor) |
void |
clearWarnings() |
void |
close() |
void |
commit() |
java.sql.Array |
createArrayOf(java.lang.String typeName,
java.lang.Object[] elements) |
java.sql.Blob |
createBlob() |
java.sql.Clob |
createClob() |
java.sql.NClob |
createNClob() |
java.sql.SQLXML |
createSQLXML() |
java.sql.Statement |
createStatement() |
java.sql.Statement |
createStatement(int resultSetType,
int resultSetConcurrency) |
java.sql.Statement |
createStatement(int resultSetType,
int resultSetConcurrency,
int resultSetHoldability) |
java.sql.Struct |
createStruct(java.lang.String typeName,
java.lang.Object[] attributes) |
boolean |
getAutoCommit() |
java.lang.String |
getCatalog() |
java.util.Properties |
getClientInfo() |
java.lang.String |
getClientInfo(java.lang.String name) |
int |
getHoldability() |
MysqlServerStatusInfo |
getLastServerStatusInfo()
获得当前连接最新的 Mysql 服务端状态信息。
|
java.sql.DatabaseMetaData |
getMetaData() |
MysqlChannel |
getMysqlChannel()
获得当前连接使用的与 Mysql 服务进行数据交互的管道。
|
int |
getNetworkTimeout() |
java.lang.String |
getSchema() |
int |
getTransactionIsolation() |
java.util.Map<java.lang.String,java.lang.Class<?>> |
getTypeMap() |
java.sql.SQLWarning |
getWarnings() |
boolean |
isClosed() |
boolean |
isReadOnly() |
boolean |
isValid(int timeout) |
boolean |
isWrapperFor(java.lang.Class<?> iface) |
java.lang.String |
nativeSQL(java.lang.String sql) |
java.sql.CallableStatement |
prepareCall(java.lang.String sql) |
java.sql.CallableStatement |
prepareCall(java.lang.String sql,
int resultSetType,
int resultSetConcurrency) |
java.sql.CallableStatement |
prepareCall(java.lang.String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability) |
java.sql.PreparedStatement |
prepareStatement(java.lang.String sql) |
java.sql.PreparedStatement |
prepareStatement(java.lang.String sql,
int autoGeneratedKeys) |
java.sql.PreparedStatement |
prepareStatement(java.lang.String sql,
int[] columnIndexes) |
java.sql.PreparedStatement |
prepareStatement(java.lang.String sql,
int resultSetType,
int resultSetConcurrency) |
java.sql.PreparedStatement |
prepareStatement(java.lang.String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability) |
java.sql.PreparedStatement |
prepareStatement(java.lang.String sql,
java.lang.String[] columnNames) |
void |
releaseSavepoint(java.sql.Savepoint savepoint) |
void |
rollback() |
void |
rollback(java.sql.Savepoint savepoint) |
void |
setAutoCommit(boolean autoCommit) |
void |
setCatalog(java.lang.String catalog) |
void |
setClientInfo(java.util.Properties properties) |
void |
setClientInfo(java.lang.String name,
java.lang.String value) |
void |
setHoldability(int holdability) |
void |
setLastServerStatusInfo(MysqlServerStatusInfo lastServerStatusInfo)
设置当前连接最新的 Mysql 服务端状态信息。
|
void |
setNetworkTimeout(java.util.concurrent.Executor executor,
int milliseconds) |
void |
setReadOnly(boolean readOnly) |
java.sql.Savepoint |
setSavepoint() |
java.sql.Savepoint |
setSavepoint(java.lang.String name) |
void |
setSchema(java.lang.String schema) |
void |
setTransactionIsolation(int level) |
void |
setTypeMap(java.util.Map<java.lang.String,java.lang.Class<?>> map) |
java.lang.String |
toString() |
<T> T |
unwrap(java.lang.Class<T> iface) |
protected final MysqlChannel mysqlChannel
protected volatile MysqlServerStatusInfo lastServerStatusInfo
protected final com.heimuheimu.naivemonitor.monitor.ExecutionMonitor executionMonitor
protected final DatabaseMonitor databaseMonitor
protected volatile long timeout
protected final long slowExecutionThreshold
protected volatile java.lang.String currentDatabaseName
protected volatile int transactionIsolation
Integer.MIN_VALUEprotected volatile int readOnlyFlag
Integer.MIN_VALUEpublic MysqlConnection(ConnectionConfiguration configuration, int timeout, int slowExecutionThreshold, UnusableServiceNotifier<MysqlConnection> unusableServiceNotifier) throws java.lang.IllegalArgumentException, BuildSocketException
configuration - 建立 Mysql 数据库连接使用的配置信息,不允许为 nulltimeout - SQL 执行超时时间,单位:毫秒,如果等于 0,则没有超时时间限制,不允许设置小于 0 的值slowExecutionThreshold - 执行 Mysql 命令过慢最小时间,单位:毫秒,不能小于等于 0unusableServiceNotifier - MysqlConnection 不可用通知器,允许为 nulljava.lang.IllegalArgumentException - 如果 configuration 为 null,将会抛出此异常java.lang.IllegalArgumentException - 如果 timeout 小于 0,将会抛出此异常java.lang.IllegalArgumentException - 如果 slowExecutionThreshold 小于等于 0,将会抛出此异常BuildSocketException - 如果创建与 Mysql 服务器的 Socket 连接失败,将会抛出此异常public void setNetworkTimeout(java.util.concurrent.Executor executor,
int milliseconds)
throws java.sql.SQLException
setNetworkTimeout 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic int getNetworkTimeout()
throws java.sql.SQLException
getNetworkTimeout 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic boolean isValid(int timeout)
isValid 在接口中 java.sql.Connectionpublic java.sql.DatabaseMetaData getMetaData()
throws java.sql.SQLException
getMetaData 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.lang.String getSchema()
throws java.sql.SQLException
getSchema 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic void setSchema(java.lang.String schema)
throws java.sql.SQLException
setSchema 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Statement createStatement()
throws java.sql.SQLException
createStatement 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Statement createStatement(int resultSetType,
int resultSetConcurrency)
throws java.sql.SQLException
createStatement 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.PreparedStatement prepareStatement(java.lang.String sql)
throws java.sql.SQLException
prepareStatement 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.PreparedStatement prepareStatement(java.lang.String sql,
int autoGeneratedKeys)
throws java.sql.SQLException
prepareStatement 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.PreparedStatement prepareStatement(java.lang.String sql,
int resultSetType,
int resultSetConcurrency)
throws java.sql.SQLException
prepareStatement 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.lang.String nativeSQL(java.lang.String sql)
throws java.sql.SQLException
nativeSQL 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic boolean getAutoCommit()
throws java.sql.SQLException
getAutoCommit 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic void setAutoCommit(boolean autoCommit)
throws java.sql.SQLException
setAutoCommit 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic boolean isReadOnly()
throws java.sql.SQLException
isReadOnly 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic void setReadOnly(boolean readOnly)
throws java.sql.SQLException
setReadOnly 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic int getTransactionIsolation()
throws java.sql.SQLException
getTransactionIsolation 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic void setTransactionIsolation(int level)
throws java.sql.SQLException
setTransactionIsolation 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Savepoint setSavepoint()
throws java.sql.SQLException
setSavepoint 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Savepoint setSavepoint(java.lang.String name)
throws java.sql.SQLException
setSavepoint 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic void rollback(java.sql.Savepoint savepoint)
throws java.sql.SQLException
rollback 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic void releaseSavepoint(java.sql.Savepoint savepoint)
throws java.sql.SQLException
releaseSavepoint 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic void commit()
throws java.sql.SQLException
commit 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic void rollback()
throws java.sql.SQLException
rollback 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic void abort(java.util.concurrent.Executor executor)
abort 在接口中 java.sql.Connectionpublic void close()
close 在接口中 java.lang.AutoCloseableclose 在接口中 java.sql.Connectionpublic boolean isClosed()
isClosed 在接口中 java.sql.Connectionpublic void setCatalog(java.lang.String catalog)
setCatalog 在接口中 java.sql.Connectionpublic java.lang.String getCatalog()
getCatalog 在接口中 java.sql.Connectionpublic java.sql.SQLWarning getWarnings()
getWarnings 在接口中 java.sql.Connectionpublic void clearWarnings()
clearWarnings 在接口中 java.sql.Connectionpublic void setClientInfo(java.lang.String name,
java.lang.String value)
setClientInfo 在接口中 java.sql.Connectionpublic void setClientInfo(java.util.Properties properties)
setClientInfo 在接口中 java.sql.Connectionpublic java.lang.String getClientInfo(java.lang.String name)
getClientInfo 在接口中 java.sql.Connectionpublic java.util.Properties getClientInfo()
getClientInfo 在接口中 java.sql.Connectionpublic <T> T unwrap(java.lang.Class<T> iface)
unwrap 在接口中 java.sql.Wrapperpublic boolean isWrapperFor(java.lang.Class<?> iface)
isWrapperFor 在接口中 java.sql.Wrapperpublic MysqlChannel getMysqlChannel()
public MysqlServerStatusInfo getLastServerStatusInfo()
public void setLastServerStatusInfo(MysqlServerStatusInfo lastServerStatusInfo)
lastServerStatusInfo - 最新的 Mysql 服务端状态信息public java.lang.String toString()
toString 在类中 java.lang.Objectpublic java.sql.Clob createClob()
throws java.sql.SQLException
createClob 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Blob createBlob()
throws java.sql.SQLException
createBlob 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.NClob createNClob()
throws java.sql.SQLException
createNClob 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.SQLXML createSQLXML()
throws java.sql.SQLException
createSQLXML 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Array createArrayOf(java.lang.String typeName,
java.lang.Object[] elements)
throws java.sql.SQLException
createArrayOf 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Struct createStruct(java.lang.String typeName,
java.lang.Object[] attributes)
throws java.sql.SQLException
createStruct 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic void setHoldability(int holdability)
throws java.sql.SQLException
setHoldability 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic int getHoldability()
throws java.sql.SQLException
getHoldability 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.Statement createStatement(int resultSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws java.sql.SQLException
createStatement 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.PreparedStatement prepareStatement(java.lang.String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws java.sql.SQLException
prepareStatement 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.PreparedStatement prepareStatement(java.lang.String sql,
int[] columnIndexes)
throws java.sql.SQLException
prepareStatement 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.PreparedStatement prepareStatement(java.lang.String sql,
java.lang.String[] columnNames)
throws java.sql.SQLException
prepareStatement 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.CallableStatement prepareCall(java.lang.String sql)
throws java.sql.SQLException
prepareCall 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.CallableStatement prepareCall(java.lang.String sql,
int resultSetType,
int resultSetConcurrency)
throws java.sql.SQLException
prepareCall 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.sql.CallableStatement prepareCall(java.lang.String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability)
throws java.sql.SQLException
prepareCall 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic java.util.Map<java.lang.String,java.lang.Class<?>> getTypeMap()
throws java.sql.SQLException
getTypeMap 在接口中 java.sql.Connectionjava.sql.SQLExceptionpublic void setTypeMap(java.util.Map<java.lang.String,java.lang.Class<?>> map)
throws java.sql.SQLException
setTypeMap 在接口中 java.sql.Connectionjava.sql.SQLExceptionCopyright © 2019. All Rights Reserved.