Browse Source

JDBC 3.0 related javadoc overhaul

Issue: SPR-11600
pull/512/head
Juergen Hoeller 12 years ago
parent
commit
3fef35879d
  1. 7
      spring-jdbc/src/main/java/org/springframework/jdbc/core/metadata/HsqlTableMetaDataProvider.java
  2. 13
      spring-jdbc/src/main/java/org/springframework/jdbc/core/metadata/PostgresTableMetaDataProvider.java
  3. 13
      spring-jdbc/src/main/java/org/springframework/jdbc/datasource/DataSourceTransactionManager.java
  4. 8
      spring-jdbc/src/main/java/org/springframework/jdbc/object/StoredProcedure.java
  5. 3
      spring-jdbc/src/main/java/org/springframework/jdbc/support/incrementer/DerbyMaxValueIncrementer.java
  6. 32
      spring-jdbc/src/main/java/org/springframework/jdbc/support/incrementer/SqlServerMaxValueIncrementer.java
  7. 2
      spring-jdbc/src/main/java/org/springframework/jdbc/support/incrementer/SybaseAnywhereMaxValueIncrementer.java
  8. 18
      spring-jdbc/src/main/java/org/springframework/jdbc/support/incrementer/SybaseMaxValueIncrementer.java

7
spring-jdbc/src/main/java/org/springframework/jdbc/core/metadata/HsqlTableMetaDataProvider.java

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2013 the original author or authors. * Copyright 2002-2014 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -20,8 +20,9 @@ import java.sql.DatabaseMetaData;
import java.sql.SQLException; import java.sql.SQLException;
/** /**
* The HSQL specific implementation of the {@link TableMetaDataProvider}. * The HSQL specific implementation of {@link TableMetaDataProvider}.
* Supports a feature for retreiving generated keys without the JDBC 3.0 getGeneratedKeys support. * Supports a feature for retrieving generated keys without the JDBC 3.0
* {@code getGeneratedKeys} support.
* *
* @author Thomas Risberg * @author Thomas Risberg
* @since 2.5 * @since 2.5

13
spring-jdbc/src/main/java/org/springframework/jdbc/core/metadata/PostgresTableMetaDataProvider.java

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2011 the original author or authors. * Copyright 2002-2014 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -20,8 +20,9 @@ import java.sql.DatabaseMetaData;
import java.sql.SQLException; import java.sql.SQLException;
/** /**
* The PostgreSQL specific implementation of the {@link org.springframework.jdbc.core.metadata.TableMetaDataProvider}. * The PostgreSQL specific implementation of {@link TableMetaDataProvider}.
* Suports a feature for retreiving generated keys without the JDBC 3.0 getGeneratedKeys support. * Supports a feature for retrieving generated keys without the JDBC 3.0
* {@code getGeneratedKeys} support.
* *
* @author Thomas Risberg * @author Thomas Risberg
* @since 2.5 * @since 2.5
@ -38,7 +39,10 @@ public class PostgresTableMetaDataProvider extends GenericTableMetaDataProvider
return true; return true;
} }
else { else {
logger.warn("PostgreSQL does not support getGeneratedKeys or INSERT ... RETURNING in version " + getDatabaseVersion()); if (logger.isWarnEnabled()) {
logger.warn("PostgreSQL does not support getGeneratedKeys or INSERT ... RETURNING in version " +
getDatabaseVersion());
}
return false; return false;
} }
} }
@ -47,4 +51,5 @@ public class PostgresTableMetaDataProvider extends GenericTableMetaDataProvider
public String getSimpleQueryForGetGeneratedKey(String tableName, String keyColumnName) { public String getSimpleQueryForGetGeneratedKey(String tableName, String keyColumnName) {
return "RETURNING " + keyColumnName; return "RETURNING " + keyColumnName;
} }
} }

13
spring-jdbc/src/main/java/org/springframework/jdbc/datasource/DataSourceTransactionManager.java

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2013 the original author or authors. * Copyright 2002-2014 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -33,10 +33,9 @@ import org.springframework.transaction.support.TransactionSynchronizationManager
* {@link org.springframework.transaction.PlatformTransactionManager} * {@link org.springframework.transaction.PlatformTransactionManager}
* implementation for a single JDBC {@link javax.sql.DataSource}. This class is * implementation for a single JDBC {@link javax.sql.DataSource}. This class is
* capable of working in any environment with any JDBC driver, as long as the setup * capable of working in any environment with any JDBC driver, as long as the setup
* uses a JDBC 2.0 Standard Extensions / JDBC 3.0 {@code javax.sql.DataSource} * uses a {@code javax.sql.DataSource} as its {@code Connection} factory mechanism.
* as its Connection factory mechanism. Binds a JDBC Connection from the specified * Binds a JDBC Connection from the specified DataSource to the current thread,
* DataSource to the current thread, potentially allowing for one thread-bound * potentially allowing for one thread-bound Connection per DataSource.
* Connection per DataSource.
* *
* <p><b>Note: The DataSource that this transaction manager operates on needs * <p><b>Note: The DataSource that this transaction manager operates on needs
* to return independent Connections.</b> The Connections may come from a pool * to return independent Connections.</b> The Connections may come from a pool
@ -75,8 +74,8 @@ import org.springframework.transaction.support.TransactionSynchronizationManager
* an actual JDBC Connection from the target DataSource until a Statement gets executed, * an actual JDBC Connection from the target DataSource until a Statement gets executed,
* lazily applying the specified transaction settings to the target Connection. * lazily applying the specified transaction settings to the target Connection.
* *
* <p>On JDBC 3.0, this transaction manager supports nested transactions via the * <p>This transaction manager supports nested transactions via the JDBC 3.0
* JDBC 3.0 {@link java.sql.Savepoint} mechanism. The * {@link java.sql.Savepoint} mechanism. The
* {@link #setNestedTransactionAllowed "nestedTransactionAllowed"} flag defaults * {@link #setNestedTransactionAllowed "nestedTransactionAllowed"} flag defaults
* to "true", since nested transactions will work without restrictions on JDBC * to "true", since nested transactions will work without restrictions on JDBC
* drivers that support savepoints (such as the Oracle JDBC driver). * drivers that support savepoints (such as the Oracle JDBC driver).

8
spring-jdbc/src/main/java/org/springframework/jdbc/object/StoredProcedure.java

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2012 the original author or authors. * Copyright 2002-2014 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -16,8 +16,8 @@
package org.springframework.jdbc.object; package org.springframework.jdbc.object;
import java.util.Map;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map;
import javax.sql.DataSource; import javax.sql.DataSource;
import org.springframework.dao.DataAccessException; import org.springframework.dao.DataAccessException;
@ -33,9 +33,7 @@ import org.springframework.jdbc.core.SqlParameter;
* {@link #execute} method. * {@link #execute} method.
* *
* <p>The inherited {@code sql} property is the name of the stored * <p>The inherited {@code sql} property is the name of the stored
* procedure in the RDBMS. Note that JDBC 3.0 introduces named parameters, * procedure in the RDBMS.
* although the other features provided by this class are still necessary
* in JDBC 3.0.
* *
* @author Rod Johnson * @author Rod Johnson
* @author Thomas Risberg * @author Thomas Risberg

3
spring-jdbc/src/main/java/org/springframework/jdbc/support/incrementer/DerbyMaxValueIncrementer.java

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2012 the original author or authors. * Copyright 2002-2014 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -20,7 +20,6 @@ import java.sql.Connection;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
import java.sql.Statement; import java.sql.Statement;
import javax.sql.DataSource; import javax.sql.DataSource;
import org.springframework.dao.DataAccessException; import org.springframework.dao.DataAccessException;

32
spring-jdbc/src/main/java/org/springframework/jdbc/support/incrementer/SqlServerMaxValueIncrementer.java

@ -1,16 +1,32 @@
/*
* Copyright 2002-2014 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.jdbc.support.incrementer; package org.springframework.jdbc.support.incrementer;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.sql.DataSource;
import org.springframework.dao.DataAccessException; import org.springframework.dao.DataAccessException;
import org.springframework.dao.DataAccessResourceFailureException; import org.springframework.dao.DataAccessResourceFailureException;
import org.springframework.jdbc.datasource.DataSourceUtils; import org.springframework.jdbc.datasource.DataSourceUtils;
import org.springframework.jdbc.support.JdbcUtils; import org.springframework.jdbc.support.JdbcUtils;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
/** /**
* {@link DataFieldMaxValueIncrementer} that increments the maximum value of a given SQL Server table * {@link DataFieldMaxValueIncrementer} that increments the maximum value of a given SQL Server table
* with the equivalent of an auto-increment column. Note: If you use this class, your Derby key * with the equivalent of an auto-increment column. Note: If you use this class, your Derby key
@ -32,8 +48,8 @@ import java.sql.SQLException;
* is rolled back, the unused values will never be served. The maximum hole size in * is rolled back, the unused values will never be served. The maximum hole size in
* numbering is consequently the value of cacheSize. * numbering is consequently the value of cacheSize.
* *
* <b>HINT:</b> Since Microsoft SQL Server supports the JDBC 3.0 {@code getGeneratedKeys} method, * <b>HINT:</b> Since Microsoft SQL Server supports the JDBC 3.0 {@code getGeneratedKeys}
* it is recommended to use IDENTITY columns directly in the tables and then using a * method, it is recommended to use IDENTITY columns directly in the tables and then using a
* {@link org.springframework.jdbc.core.simple.SimpleJdbcInsert} or utilizing * {@link org.springframework.jdbc.core.simple.SimpleJdbcInsert} or utilizing
* a {@link org.springframework.jdbc.support.KeyHolder} when calling the with the * a {@link org.springframework.jdbc.support.KeyHolder} when calling the with the
* {@code update(PreparedStatementCreator psc, KeyHolder generatedKeyHolder)} * {@code update(PreparedStatementCreator psc, KeyHolder generatedKeyHolder)}

2
spring-jdbc/src/main/java/org/springframework/jdbc/support/incrementer/SybaseAnywhereMaxValueIncrementer.java

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2012 the original author or authors. * Copyright 2002-2014 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.

18
spring-jdbc/src/main/java/org/springframework/jdbc/support/incrementer/SybaseMaxValueIncrementer.java

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2012 the original author or authors. * Copyright 2002-2014 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -16,17 +16,17 @@
package org.springframework.jdbc.support.incrementer; package org.springframework.jdbc.support.incrementer;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.sql.DataSource;
import org.springframework.dao.DataAccessException; import org.springframework.dao.DataAccessException;
import org.springframework.dao.DataAccessResourceFailureException; import org.springframework.dao.DataAccessResourceFailureException;
import org.springframework.jdbc.datasource.DataSourceUtils; import org.springframework.jdbc.datasource.DataSourceUtils;
import org.springframework.jdbc.support.JdbcUtils; import org.springframework.jdbc.support.JdbcUtils;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
/** /**
* {@link DataFieldMaxValueIncrementer} that increments * {@link DataFieldMaxValueIncrementer} that increments
* the maximum value of a given Sybase SQL Server table * the maximum value of a given Sybase SQL Server table
@ -133,8 +133,8 @@ public class SybaseMaxValueIncrementer extends AbstractColumnMaxValueIncrementer
} }
/** /**
* Statement to use to increment the "sequence" value. Can be overridden by sub-classes. * Statement to use to increment the "sequence" value. Can be overridden by subclasses.
* @return The SQL statement to use * @return the SQL statement to use
*/ */
protected String getIncrementStatement() { protected String getIncrementStatement() {
return "insert into " + getIncrementerName() + " values()"; return "insert into " + getIncrementerName() + " values()";

Loading…
Cancel
Save