org.springframework.jdbc.support

Class DatabaseStartupValidator

  • java.lang.Object
    • org.springframework.jdbc.support.DatabaseStartupValidator
  • All Implemented Interfaces:
    InitializingBean


    public class DatabaseStartupValidator
    extends java.lang.Object
    implements InitializingBean
    Bean that checks if a database has already started up. To be referenced via "depends-on" from beans that depend on database startup, like a Hibernate SessionFactory or custom data access objects that access a DataSource directly.

    Useful to defer application initialization until a database has started up. Particularly appropriate for waiting on a slowly starting Oracle database.

    Since:
    18.12.2003
    Author:
    Juergen Hoeller
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      void afterPropertiesSet()
      Check whether the validation query can be executed on a Connection from the specified DataSource, with the specified interval between checks, until the specified timeout.
      void setDataSource(javax.sql.DataSource dataSource)
      Set the DataSource to validate.
      void setInterval(int interval)
      Set the interval between validation runs (in seconds).
      void setTimeout(int timeout)
      Set the timeout (in seconds) after which a fatal exception will be thrown.
      void setValidationQuery(java.lang.String validationQuery)
      Set the SQL query string to use for validation.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • DEFAULT_INTERVAL

        public static final int DEFAULT_INTERVAL
        The default interval.
        See Also:
        Constant Field Values
      • DEFAULT_TIMEOUT

        public static final int DEFAULT_TIMEOUT
        The default timeout.
        See Also:
        Constant Field Values
      • logger

        protected final Log logger
    • Constructor Detail

      • DatabaseStartupValidator

        public DatabaseStartupValidator()
    • Method Detail

      • setDataSource

        public void setDataSource(javax.sql.DataSource dataSource)
        Set the DataSource to validate.
      • setValidationQuery

        public void setValidationQuery(java.lang.String validationQuery)
        Set the SQL query string to use for validation.
      • setInterval

        public void setInterval(int interval)
        Set the interval between validation runs (in seconds). Default is 1.
      • setTimeout

        public void setTimeout(int timeout)
        Set the timeout (in seconds) after which a fatal exception will be thrown. Default is 60.
      • afterPropertiesSet

        public void afterPropertiesSet()
        Check whether the validation query can be executed on a Connection from the specified DataSource, with the specified interval between checks, until the specified timeout.
        Specified by:
        afterPropertiesSet in interface InitializingBean