home  |  suche  |  kontakt/johner  |  institut  |  hinweise 
studierende  |  tech-docs  |  blog  |  mindmailer 

Beispiel für eine Konfigurationsdatei

Die folgende Konfigurationsdatei enthält sowohl einen Abschnitt für die Java interne HSQL-Datenbank, als auch für das Arbeiten mit MySQL.

Bei HSQL müssen Sie mit Java 6 arbeiten. In diesem Fall wurde die "in-memory" Version gewählt, wie an dem Connection-String jdbc:hsql:mem<datenbankname> zu erkennen ist.

Bei MySQL sollten Sie darauf achten, dass die Datenbank bereits angelegt ist und MySQL auch wirklich gestartet wird. Entweder als Windows-Service oder über die Batch-Datei.

Wie Ihr seht enthält die Konfigurationsdatei

  • Details für die Datenbankverbindung
    • Treiber
    • Benutzer
    • Passwort
    • Ort und Name der Datenbank
    • Datenbankmanagementsystem
  • Anweisungen fürs Debugging/Logging
  • Auflistung aller Klassen, die "gemapped" werden sollen (fully qualified class name, also mit Package (hier hibernate)).
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>

    <session-factory>

        <!-- Alternative 1: MySQL-->
        
            <!-- Database connection settings: MySQL -->
            <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
            <property name="connection.url">jdbc:mysql:///meinedb</property>
            <property name="connection.username">root</property>
            <property name="connection.password">manager</property>
            <property name="dialect">org.hibernate.dialect.MySQLDialect</property>


        <!-- Alternative 2: Database connection settings: HSQL (in memory version!!)-->
<!--              
 
            <property name="connection.driver_class">org.hsqldb.jdbcDriver</property>
            <property name="connection.url">jdbc:hsqldb:mem:meinedb</property>
            <property name="connection.username">sa</property>
            <property name="connection.password"></property>
            <property name="dialect">org.hibernate.dialect.HSQLDialect</property>

-->        
        
        <!-- JDBC connection pool (use the built-in) -->
        <property name="connection.pool_size">1</property>

         
        <!-- Enable Hibernate's automatic session context management -->
        <property name="current_session_context_class">thread</property>

        <!-- Disable the second-level cache  -->
        <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>

        <!-- Echo all executed SQL to stdout -->
        <property name="show_sql">false</property>
        <property name="format_sql">true</property>

        <!-- Drop and re-create the database schema on startup -->
        <property name="hbm2ddl.auto">create</property>
        
        <property name="hibernate.format_sql">true</property>
        
        <!-- Auflistung der gemappten Klassen (Package + Class-Name)-->
        <mapping class="hibernate.Order"/>
        <mapping class="hibernate.Customer"/>
        <mapping class="hibernate.Employee"/>
    </session-factory>

</hibernate-configuration>