Interface DBSupport

All Superinterfaces:
Serializable
All Known Implementing Classes:
AbstractDBSupportImpl, DBSupportH2Impl, DBSupportMySqlImpl, DBSupportPostgreSQLImpl

public interface DBSupport extends Serializable
Interface fuer eine unterstuetzte Datenbank. Fuer den Suppoert einer neuen Datenbank (z.Bsp. MySQL) in Hibiscus muss dieses Interface implementiert werden.
  • Method Details

    • getJdbcUrl

      String getJdbcUrl()
      Liefert die JDBC-URL.
      Returns:
      die JDBC-URL.
    • getJdbcDriver

      String getJdbcDriver()
      Liefert den Klassennamen des JDBC-Treibers.
      Returns:
      der JDBC-Treiber.
    • getJdbcUsername

      String getJdbcUsername()
      Liefert den Usernamen des Datenbank-Users.
      Returns:
      Username.
    • getJdbcPassword

      String getJdbcPassword()
      Liefert das Passwort des Datenbank-Users.
      Returns:
      das Passwort.
    • checkConnection

      void checkConnection(Connection conn) throws RemoteException
      Prueft die Datenbankverbindung.
      Parameters:
      conn - die Datenbank-Connection.
      Throws:
      RemoteException - Wenn die Verbindung defekt ist und vom DB-Service neu erzeugt werden muss.
    • execute

      void execute(Connection conn, File sqlScript) throws RemoteException
      Fuehrt ein SQL-Update-Script auf der Datenbank aus.
      Parameters:
      conn - die Datenbank-Connection.
      sqlScript - das SQL-Script.
      Throws:
      RemoteException
    • getScriptPrefix

      String getScriptPrefix() throws RemoteException
      Liefert einen Dateinamens-Prefix, der SQL-Scripts vorangestellt werden soll.
      Returns:
      Dateinamens-Prefix.
      Throws:
      RemoteException
    • getSQLTimestamp

      String getSQLTimestamp(String content) throws RemoteException
      Liefert den Namen der SQL-Funktion, mit der die Datenbank aus einem DATE-Feld einen UNIX-Timestamp macht. Bei MySQL ist das z.Bsp. "UNIX_TIMESTAMP".
      Parameters:
      content - der Feld-Name.
      Returns:
      Name der SQL-Funktion samt Parameter. Also zum Beispiel "TONUMBER(datum)".
      Throws:
      RemoteException
    • getInsertWithID

      boolean getInsertWithID() throws RemoteException
      Legt fest, ob SQL-Insert-Queries mit oder ohne ID erzeugt werden sollen.
      Returns:
      true, wenn die Insert-Queries mit ID erzeugt werden.
      Throws:
      RemoteException - Siehe auch: de.willuhn.datasource.db.DBServiceImpl#getInsertWithID()
    • getTransactionIsolationLevel

      int getTransactionIsolationLevel() throws RemoteException
      Liefert das Transaction-Isolation-Level.
      Returns:
      das Transaction-Isolation-Level.
      Throws:
      RemoteException