對於單元測試,演示和Hibernate任務我想使用一個小而簡單的Java數據庫,如Derby/Java DB或HSQLDB,它們可以在Maven中調用。輕量級Java數據庫與Maven插件啓動/停止?
到目前爲止,我還沒有找到可以下載和啓動Java DB(這是我目前最喜歡的)或類似的Maven插件。
對於單元測試,演示和Hibernate任務我想使用一個小而簡單的Java數據庫,如Derby/Java DB或HSQLDB,它們可以在Maven中調用。輕量級Java數據庫與Maven插件啓動/停止?
到目前爲止,我還沒有找到可以下載和啓動Java DB(這是我目前最喜歡的)或類似的Maven插件。
的單元測試簡單的設置是在內存中開始HSQLDB:停止所需
db.connection.driver_class=org.hsqldb.jdbcDriver
db.connection.url=jdbc:hsqldb:mem:aname
db.connection.username=sa
db.connection.password=
hibernate.dialect=org.hibernate.dialect.HSQLDialect
沒有開始和。 JDBC驅動程序將「啓動」數據庫。
你也可以用它來演示。如果您在應用程序啓動時初始化數據庫。
數據庫設置可以使用hibernate.hbm2ddl.auto完成。
要讓Maven的包括HSQLDB的依賴關係只有在測試階段,使用你的POM:
<dependency>
<groupId>hsqldb</groupId>
<artifactId>hsqldb</artifactId>
<version>1.8.0.7</version>
<scope>test</scope>
</dependency>
我不知道它是否支持你所需要的東西,但SQLite非常受歡迎,似乎有集成插件與任何東西。一探究竟。
如my answer here中所述,您可以通過我編寫的derby-maven插件將Derby用作數據庫,並且可以通過GitHub或通過Maven Central獲得。使用Derby作爲內存數據庫進行測試,就CI而言,您的生活將變得簡單 - 無需爲您的測試安裝和設置外部軟件,只需使用Maven即可完成。
你爲什麼需要一個插件來啓動一個特定的數據庫? – jitter 2009-11-17 14:28:50
持續集成,單元測試,演示儘可能少的交互和配置 - 只需啓動「mvn測試」,然後使用JPA創建一個表格 – mjn 2009-11-17 14:32:01