spring: 使用嵌入式數據源 EmbeddedDatabaseBuilder

嵌入式數據源做爲應用的一部分運行,很是適合在開發和測試環境中使用,可是不適合用於生產環境。由於在使用嵌入式數據源的狀況下,你能夠在每次應用啓動或者每次運行單元測試以前初始化測試數據。sql

使用Spring的jdbc名字空間配置嵌入式數據源很是簡單,下列代碼顯示瞭如何使用jdbc名字空間配置嵌入式的H2數據庫,並配置須要初始化的數據。數據庫

<jdbc:embedded-database id="dataSource" type="H2">
    <jdbc:script location="classpath*:schema.sql" />
    <jdbc:script location="classpath*:test-data.sql" />
</jdbc:embedded-database>

  

<jdbc:embedded-database>type屬性設置爲H2代表嵌入式數據庫的類型是H2數據庫(確保引入了H2的依賴庫)。在<jdbc:embedded-database>配置中,能夠配置多個<jdbc:script>元素,用於設置和初始化數據庫:在這個例子中,schema.sql文件中包含用於建立數據表的關係;test-data.sql文件中用於插入測試數據。單元測試

若是你使用JavaConfig,則能夠使用EmbeddedDatabaseBuilder構建嵌入式數據源:測試

@Bean
public DataSource dataSource() {
    return new EmbeddedDatabaseBuilder()
            .setType(EmbeddedDatabaseType.H2)
            .addScript("classpath*:schema.sql")
            .addScript("classpath*:test-data.sql")
            .build();
}

  能夠看出,setType()方法的做用等同於<jdbc:embedded-database>元素的type屬性,addScript()方法的做用等同於<jdbc:script>元素。ui

相關文章
相關標籤/搜索