The C-JDBC driver can be loaded from the client with: Class.forName("org.objectweb.cjdbc.driver.Driver");
The URL expected for the use with C-JDBC is: jdbc:cjdbc://host1:port1,host2:port2/database
.
At least one host must be specified. If several hosts are given, one is picked up randomly from the list. If the currently selected controller fails, another one is automatically picked up from the list.
Default port number is 25322 if omitted.
Those 2 examples are equivalent:
DriverManager.getConnection("jdbc:cjdbc://localhost:/tpcw"); DriverManager.getConnection("jdbc:cjdbc://localhost:25322/tpcw");
Examples using 2 controllers for fault tolerance:
DriverManager .getConnection("jdbc:cjdbc://cluster1.objectweb.org:25322,cluster2.objectweb.org:25322/tpcw"); DriverManager .getConnection("jdbc:cjdbc://localhost:25322,remote.objectweb.org:25322/tpcw"); DriverManager .getConnection("jdbc:cjdbc://smpnode.com:25322,smpnode.com:1098/tpcw");
This code has been inspired from the PostgreSQL JDBC driver by Peter T. Mount <peter@retep.org.uk>and the MM MySQL JDBC Drivers from Mark Matthews <mmatthew@worldserver.com>.
Driver.java の 104 行で定義されています。
Public メソッド | |
Driver () | |
java.sql.Connection | connect (String url, Properties info) throws SQLException |
synchronized boolean | acceptsURL (String url) throws SQLException |
DriverPropertyInfo[] | getPropertyInfo (String url, Properties info) throws SQLException |
int | getMajorVersion () |
int | getMinorVersion () |
boolean | jdbcCompliant () |
Static Public 変数 | |
final int | MAJOR_VERSION |
final int | MINOR_VERSION |
Protected メソッド | |
String | getUrlFromProperties (Hashtable props) |
Protected 変数 | |
ArrayList | pendingConnectionClosing = new ArrayList() |
boolean | connectionClosingThreadisAlive = false |
Static Protected 変数 | |
final String | DATABASE_PROPERTY = "DATABASE" |
final String | USER_PROPERTY = "user" |
final String | PASSWORD_PROPERTY = "password" |
final String | PARAMETER_PROPERTY = "parameter" |
final String | BOOLEAN_TRUE_PROPERTY = "booleanTrue" |
final String | BOOLEAN_FALSE_PROPERTY = "booleanFalse" |
final String | ESCAPE_BACKSLASH_PROPERTY = "escapeBackslash" |
final String | ESCAPE_SINGLE_QUOTE_PROPERTY = "escapeSingleQuote" |
final String | ESCAPE_CHARACTER_PROPERTY = "escapeCharacter" |
関数 | |
synchronized Hashtable | parseURL (String url) throws SQLException |
スタティック関数 | |
[static initializer] | |
Private メソッド | |
java.sql.Connection | setParametersOnConnection (Properties props, org.objectweb.cjdbc.driver.Connection connection) |
Hashtable | parseUrlParams (String url) throws SQLException |
Hashtable | parseUrlParams (String url, char mark, String link, String equal) throws SQLException |
ControllerInfo | parseController (String controller) throws SQLException |
Static Private メソッド | |
Character | validHostname (String hostname) |
Character | validDatabaseName (String databaseName) |
Private 変数 | |
HashMap | controllerCache = new HashMap() |
HashMap | dbNameCache = new HashMap() |
String | currentControllerURL = null |
ArrayList | controllerConfig = null |
ControllerInfo | currentControllerConfig = null |
String | currentDatabase = null |
Random | random |
int | controllerConfigArraySize |
int | connectionRequestSinceControllerFailure = 0 |
Static Private 変数 | |
final String | HOST_PROPERTY = "HOST" |
final String | PORT_PROPERTY = "PORT" |
final String | CONTROLLER_PROPERTY = "CONTROLLER" |
final String | HOST_PROPERTY_DESCRIPTION = "Hostname of C-JDBC controller" |
final String | PORT_PROPERTY_DESCRIPTION = "Port number of C-JDBC controller" |
final String | DATABASE_PROPERTY_DESCRIPTION = "Database name" |
final String | USER_PROPERTY_DESCRIPTION = "Username to authenticate as" |
final String | PASSWORD_PROPERTY_DESCRIPTION = "Password to use for authentication" |
final String | BOOLEAN_TRUE_PROPERTY_DESCRIPTION = "Use this value for the 'true' value when using PreparedStatement.setBoolean method" |
final String | BOOLEAN_FALSE_PROPERTY_DESCRIPTION = "Use this value for the 'false' value when using PreparedStatement.setBoolean method" |
final String | ESCAPE_BACKSLASH_PROPERTY_DESCRIPTION = "Set this to true to escape backslashes when performing escape processing of PreparedStatements" |
final String | ESCAPE_SINGLE_QUOTE_PROPERTY_DESCRIPTION = "Set this to true to escape single quotes (') when performing escape processing of PreparedStatements" |
final String | ESCAPE_CHARACTER_PROPERTY_DESCRIPTION = "Use this character to prepend and append to the values when performing escape processing of PreparedStatements" |
final String | CJDBC_URL_HEADER = "jdbc:cjdbc://" |
final int | CJDBC_URL_HEADER_LENGTH |
final int | RETRY_CONTROLLER_AFTER_FAILURE = 10 |
|
Creates a new 参照先 org.objectweb.cjdbc.driver.Driver.random.
|
|
|
|
Tests if the URL is understood by the driver. Calls the
参照先 org.objectweb.cjdbc.driver.Driver.parseURL().
|
|
Asks the C-JDBC controller if the requested database can be accessed with the provided user name and password. If the C-JDBC controller can't access the requested database, an
We cannot raise a SQLException as the driver manager tries to connect to all registered drivers. So if the CJDBC_URL_HEADER is not found we should probably pass... and return 参照先 org.objectweb.cjdbc.driver.Driver.CJDBC_URL_HEADER, org.objectweb.cjdbc.driver.Driver.connectionRequestSinceControllerFailure, org.objectweb.cjdbc.driver.Driver.controllerCache, org.objectweb.cjdbc.driver.Driver.controllerConfig, org.objectweb.cjdbc.driver.Driver.controllerConfigArraySize, org.objectweb.cjdbc.driver.Driver.currentControllerConfig, org.objectweb.cjdbc.driver.Driver.currentControllerURL, org.objectweb.cjdbc.driver.Driver.currentDatabase, org.objectweb.cjdbc.driver.Driver.dbNameCache, org.objectweb.cjdbc.driver.Driver.ControllerInfo.getHostname(), org.objectweb.cjdbc.driver.Connection.getPassword(), org.objectweb.cjdbc.driver.Driver.ControllerInfo.getPort(), org.objectweb.cjdbc.driver.Connection.getURL(), org.objectweb.cjdbc.driver.Connection.getUserName(), org.objectweb.cjdbc.driver.Connection.isClosed, org.objectweb.cjdbc.driver.Driver.parseURL(), org.objectweb.cjdbc.driver.Driver.PASSWORD_PROPERTY, org.objectweb.cjdbc.driver.Driver.pendingConnectionClosing, org.objectweb.cjdbc.driver.Driver.random, org.objectweb.cjdbc.driver.Driver.RETRY_CONTROLLER_AFTER_FAILURE, org.objectweb.cjdbc.driver.Driver.setParametersOnConnection(), と org.objectweb.cjdbc.driver.Driver.USER_PROPERTY. 参照元 org.objectweb.cjdbc.driver.DataSource.getConnection(), と org.objectweb.cjdbc.driver.Connection.reconnect().
|
|
Gets the river's major version number
参照先 org.objectweb.cjdbc.driver.Driver.MAJOR_VERSION. 参照元 org.objectweb.cjdbc.driver.DataSource.getDescription().
|
|
Gets the driver's minor version number
参照先 org.objectweb.cjdbc.driver.Driver.MINOR_VERSION. 参照元 org.objectweb.cjdbc.driver.DataSource.getDescription().
|
|
This method is intended to allow a generic GUI tool to discover what properties it should prompt a human for in order to get enough information to connect to a database.
The only properties supported by C-JDBC are: #PORT_PROPERTY, #CONTROLLER_PROPERTY, #DATABASE_PROPERTY, #USER_PROPERTY and #PASSWORD_PROPERTY. url the URL of the database to connect to info a proposed list of tag/value pairs that will be sent on connect open. an array of 参照先 org.objectweb.cjdbc.driver.Driver.BOOLEAN_FALSE_PROPERTY, org.objectweb.cjdbc.driver.Driver.BOOLEAN_FALSE_PROPERTY_DESCRIPTION, org.objectweb.cjdbc.driver.Driver.BOOLEAN_TRUE_PROPERTY, org.objectweb.cjdbc.driver.Driver.BOOLEAN_TRUE_PROPERTY_DESCRIPTION, org.objectweb.cjdbc.driver.Driver.DATABASE_PROPERTY, org.objectweb.cjdbc.driver.Driver.DATABASE_PROPERTY_DESCRIPTION, org.objectweb.cjdbc.driver.Driver.ESCAPE_BACKSLASH_PROPERTY, org.objectweb.cjdbc.driver.Driver.ESCAPE_BACKSLASH_PROPERTY_DESCRIPTION, org.objectweb.cjdbc.driver.Driver.ESCAPE_CHARACTER_PROPERTY, org.objectweb.cjdbc.driver.Driver.ESCAPE_CHARACTER_PROPERTY_DESCRIPTION, org.objectweb.cjdbc.driver.Driver.ESCAPE_SINGLE_QUOTE_PROPERTY, org.objectweb.cjdbc.driver.Driver.ESCAPE_SINGLE_QUOTE_PROPERTY_DESCRIPTION, org.objectweb.cjdbc.driver.Driver.HOST_PROPERTY, org.objectweb.cjdbc.driver.Driver.HOST_PROPERTY_DESCRIPTION, org.objectweb.cjdbc.driver.Driver.PASSWORD_PROPERTY, org.objectweb.cjdbc.driver.Driver.PASSWORD_PROPERTY_DESCRIPTION, org.objectweb.cjdbc.driver.Driver.PORT_PROPERTY, org.objectweb.cjdbc.driver.Driver.PORT_PROPERTY_DESCRIPTION, org.objectweb.cjdbc.driver.Driver.USER_PROPERTY, と org.objectweb.cjdbc.driver.Driver.USER_PROPERTY_DESCRIPTION.
|
|
Feed in a set of properties and get the url as a
参照先 org.objectweb.cjdbc.driver.Driver.CJDBC_URL_HEADER, org.objectweb.cjdbc.driver.Driver.CONTROLLER_PROPERTY, org.objectweb.cjdbc.driver.Driver.DATABASE_PROPERTY, と org.objectweb.cjdbc.driver.Driver.PARAMETER_PROPERTY. 参照元 org.objectweb.cjdbc.driver.Connection.setCatalog().
|
|
Reports whether the driver is a genuine JDBC compliant driver. A driver may only report
|
|
Checks the validity of the hostname, port number and controller name given in the URL and build the full URL used to lookup a controller.
参照先 org.objectweb.cjdbc.driver.Driver.ControllerInfo.getHostname(), org.objectweb.cjdbc.driver.Driver.ControllerInfo.setHostname(), org.objectweb.cjdbc.driver.Driver.ControllerInfo.setPort(), と org.objectweb.cjdbc.driver.Driver.validHostname(). 参照元 org.objectweb.cjdbc.driver.Driver.parseURL().
|
|
Checks for URL correctness and adds controllers list and database name to the cache.
参照先 org.objectweb.cjdbc.driver.Driver.CJDBC_URL_HEADER, org.objectweb.cjdbc.driver.Driver.CJDBC_URL_HEADER_LENGTH, org.objectweb.cjdbc.driver.Driver.CONTROLLER_PROPERTY, org.objectweb.cjdbc.driver.Driver.controllerCache, org.objectweb.cjdbc.driver.Driver.DATABASE_PROPERTY, org.objectweb.cjdbc.driver.Driver.dbNameCache, org.objectweb.cjdbc.driver.Driver.PARAMETER_PROPERTY, org.objectweb.cjdbc.driver.Driver.parseController(), org.objectweb.cjdbc.driver.Driver.parseUrlParams(), と org.objectweb.cjdbc.driver.Driver.validDatabaseName(). 参照元 org.objectweb.cjdbc.driver.Driver.acceptsURL(), org.objectweb.cjdbc.driver.Driver.connect(), と org.objectweb.cjdbc.driver.Connection.setCatalog().
|
|
Driver.java の 643 行で定義されています。
|
|
Driver.java の 632 行で定義されています。 参照元 org.objectweb.cjdbc.driver.Driver.parseURL().
|
|
Set the different parameters on the connection. Possible values are:
参照先 org.objectweb.cjdbc.driver.Driver.BOOLEAN_FALSE_PROPERTY, org.objectweb.cjdbc.driver.Driver.BOOLEAN_TRUE_PROPERTY, org.objectweb.cjdbc.driver.Driver.ESCAPE_BACKSLASH_PROPERTY, org.objectweb.cjdbc.driver.Driver.ESCAPE_CHARACTER_PROPERTY, と org.objectweb.cjdbc.driver.Driver.ESCAPE_SINGLE_QUOTE_PROPERTY. 参照元 org.objectweb.cjdbc.driver.Driver.connect().
|
|
Checks that the given name contains acceptable characters for a database name ([0-9][A-Z][a-z]).
参照元 org.objectweb.cjdbc.driver.Driver.parseURL().
|
|
Checks that the given name contains acceptable characters for a hostname name ([0-9][A-Z][a-z][.]).
参照元 org.objectweb.cjdbc.driver.Driver.parseController().
|
|
Driver.java の 123 行で定義されています。 参照元 org.objectweb.cjdbc.driver.Driver.getPropertyInfo(), と org.objectweb.cjdbc.driver.Driver.setParametersOnConnection(). |
|
Driver.java の 135 行で定義されています。 |
|
Driver.java の 122 行で定義されています。 参照元 org.objectweb.cjdbc.driver.Driver.getPropertyInfo(), と org.objectweb.cjdbc.driver.Driver.setParametersOnConnection(). |
|
Driver.java の 134 行で定義されています。 |
|
C-JDBC URL header. Driver.java の 141 行で定義されています。 参照元 org.objectweb.cjdbc.driver.Driver.connect(), org.objectweb.cjdbc.driver.Driver.getUrlFromProperties(), と org.objectweb.cjdbc.driver.Driver.parseURL(). |
|
初期値: C-JDBC URL header length. Driver.java の 144 行で定義されています。 |
|
|
Driver.java の 167 行で定義されています。 |
|
Driver.java の 117 行で定義されています。 参照元 org.objectweb.cjdbc.driver.Driver.getUrlFromProperties(), と org.objectweb.cjdbc.driver.Driver.parseURL(). |
|
Cache of parsed URL ( 参照元 org.objectweb.cjdbc.driver.Driver.connect(), と org.objectweb.cjdbc.driver.Driver.parseURL(). |
|
Driver.java の 162 行で定義されています。 |
|
Driver.java の 166 行で定義されています。 |
|
Driver.java の 163 行で定義されています。 |
|
Controller. Driver.java の 161 行で定義されています。 |
|
Driver.java の 164 行で定義されています。 |
|
Driver.java の 118 行で定義されています。 参照元 org.objectweb.cjdbc.driver.Driver.getPropertyInfo(), org.objectweb.cjdbc.driver.Driver.getUrlFromProperties(), と org.objectweb.cjdbc.driver.Driver.parseURL(). |
|
Driver.java の 131 行で定義されています。 |
|
Cache of database names and matching URLs. Driver.java の 154 行で定義されています。 参照元 org.objectweb.cjdbc.driver.Driver.connect(), と org.objectweb.cjdbc.driver.Driver.parseURL(). |
|
Driver.java の 124 行で定義されています。 参照元 org.objectweb.cjdbc.driver.Driver.getPropertyInfo(), と org.objectweb.cjdbc.driver.Driver.setParametersOnConnection(). |
|
Driver.java の 136 行で定義されています。 |
|
Driver.java の 126 行で定義されています。 参照元 org.objectweb.cjdbc.driver.Driver.getPropertyInfo(), と org.objectweb.cjdbc.driver.Driver.setParametersOnConnection(). |
|
Driver.java の 138 行で定義されています。 |
|
Driver.java の 125 行で定義されています。 参照元 org.objectweb.cjdbc.driver.Driver.getPropertyInfo(), と org.objectweb.cjdbc.driver.Driver.setParametersOnConnection(). |
|
Driver.java の 137 行で定義されています。 |
|
C-JDBC driver property name. Driver.java の 115 行で定義されています。 |
|
C-JDBC driver property description. Driver.java の 129 行で定義されています。 |
|
初期値: Driver major version. Driver.java の 107 行で定義されています。 |
|
初期値: Driver minor version. Driver.java の 111 行で定義されています。 |
|
Driver.java の 121 行で定義されています。 参照元 org.objectweb.cjdbc.driver.Driver.getUrlFromProperties(), と org.objectweb.cjdbc.driver.Driver.parseURL(). |
|
Driver.java の 120 行で定義されています。 参照元 org.objectweb.cjdbc.driver.Driver.connect(), と org.objectweb.cjdbc.driver.Driver.getPropertyInfo(). |
|
Driver.java の 133 行で定義されています。 |
|
List of connections that are ready to be closed. Driver.java の 157 行で定義されています。 参照元 org.objectweb.cjdbc.driver.Connection.close(), org.objectweb.cjdbc.driver.Driver.connect(), と org.objectweb.cjdbc.driver.ConnectionClosingThread.ConnectionClosingThread(). |
|
Driver.java の 116 行で定義されています。 |
|
Driver.java の 130 行で定義されています。 |
|
Driver.java の 165 行で定義されています。 参照元 org.objectweb.cjdbc.driver.Driver.connect(), と org.objectweb.cjdbc.driver.Driver.Driver(). |
|
Driver.java の 170 行で定義されています。 |
|
Driver.java の 119 行で定義されています。 参照元 org.objectweb.cjdbc.driver.Driver.connect(), と org.objectweb.cjdbc.driver.Driver.getPropertyInfo(). |
|
Driver.java の 132 行で定義されています。 |