# Any properties starting with "database." will be fed to the JDBC driver,
# after removing the "database." prefix.
#
# The following "special" properties are removed from that set:
#
#  database.driver :  Class name of the driver to load.
#  database.url    :  The connection URL
#


# H2
# curl -O http://repo1.maven.org/maven2/com/h2database/h2/1.1.112/h2-1.1.112.jar
#
# database.classpath = h2-1.1.112.jar
# database.driver = org.h2.Driver
# database.url = jdbc:h2:file:ReviewDb


# PostgreSQL
# curl -O http://jdbc.postgresql.org/download/postgresql-8.3-604.jdbc3.jar
#
# database.classpath = postgresql-8.3-604.jdbc3.jar
# database.driver = org.postgresql.Driver
# database.url = jdbc:postgresql:reviewdb
# database.user = gerrit2
# database.password = supersecretcode


# MySQL 5.0
# curl -O http://repo1.maven.org/maven2/mysql/mysql-connector-java/5.0.8/mysql-connector-java-5.0.8.jar
#
# database.classpath = mysql-connector-java-5.0.8.jar
# database.driver = com.mysql.jdbc.Driver
# database.url = jdbc:mysql://localhost/reviewdb?user=gerrit2&password=secretcode
