2017-02-08 11 views
0

データベースを使用しているSpring-Boot-Applicationで作業しています。 私はユーザーに組み込みデータベース(クイックテスト用)またはハードドライブベースのデータベース(長期使用用)を使用するオプションを提供したいと考えています。 私の方法は、application.propertiesにboolフラグを追加し、configでこれを読んで、必要なDataSourceを作成することです。Spring-Boot/H2ファイルシステムへのデータベーススナップショットの書き込み

@Bean 
public DataSource dataSource() {  
    if (embedded) { 
     EmbeddedDatabaseBuilder builder = new EmbeddedDatabaseBuilder(); 
     EmbeddedDatabase db = builder 
       .setType(EmbeddedDatabaseType.H2) 
       .addScript("db.sql") 
       .build(); 
     return db; 
    } else { 
     DriverManagerDataSource dataSource = new DriverManagerDataSource(); 
     dataSource.setDriverClassName(driver); 
     dataSource.setUrl(databaseURL); 
     dataSource.setUsername(databaseUser); 
     dataSource.setPassword(databasePassword); 
     return dataSource; 
    } 
} 

これはうまくいきます。今の私の問題は、セッション間で組み込みデータベースを永続化し、アプリケーションを再起動するとコンテンツを再度ロードすることです(ユーザーが組み込みのデータベースを使用していた場合に再度使用してデータを失うことはありません)

データベースにスナップショットを作成し、起動時にそれらを再度使用するには、コードに何を追加する必要がありますか?

Greetz、あなたの助けに感謝、 パトリック

答えて

1

あなたはconnection URLかかわらず、それを構成します。

+0

お返事ありがとうございます!残念ながら、私は埋め込まれたDataBaseBuilderの接続URLを設定する方法を見ていません –

関連する問題