セッション間でテーブルを永続化するようにSlickをどのように構成する必要がありますか?

davenportw15

Slick2.0.2のセットアップ中にいくつかの問題が発生しました。あるセッションで行った構成は、次のセッションでは失われます。たとえば、最初のセッションでは、テーブルを作成して3人を追加します。

// H2 in-memory database
lazy val db = Database.forURL("jdbc:h2:mem:contacts", driver="org.h2.Driver")

// Contacts table
lazy val contacts = TableQuery[ContactsSchema]

// Initial session
db withSession { implicit session =>
  contacts.ddl.create

  // Inserts sample data
  contacts += Person("John", "123 Main street", 29)
  contacts += Person("Greg", "Neither here nor there", 40)
  contacts += Person("Michael", "Continental U.S.", 34)

  // Successfully retrieves data
  contacts foreach { person =>
    println(person)
  }
}

これまでのところ、すべて順調です。出力は、私が追加した3人を繰り返します。新しいセッションを開始すると、問題が発生し始めます。

// New session in which the previous data is lost
db withSession { implicit session =>
  contacts foreach { person =>
    println(person)
  }
}

上記のブロックはorg.h2.jdbc.JdbcSQLException: Table "CONTACTS" not found例外を作成します。次のように編集すると

db withSession { implicit session =>
  contacts.ddl.create
  contacts foreach { person =>
    println(person)
  }
}

その後、すべてのデータが消去されます。

SlickScalatraガイドは、マイニングと同様の構成を使用していることがわかります。私は何が間違っているのですか?セッション間でデータを永続化するにはどうすればよいですか?インメモリデータベースを使用しているという事実は、それと関係がありますか?

cvogt

2つの選択肢。

セッションを作成して開いたままにします。これは、コールスタックまたはdb.createSessionの下位にあるwithSessionスコープを使用して実行できます。

または;DB_CLOSE_DELAY=-1、データベースのURLに追加します。これにより、VMが実行されている限りdbが存続します。

http://www.h2database.com/html/features.html#in_memory_databasesを参照してください

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

どのように/ ClaimsPrincipalを永続化する必要がありますか?

分類Dev

partedを使用してRAIDパーティションをどのように作成および構成する必要がありますか?

分類Dev

partedを使用してRAIDパーティションをどのように作成および構成する必要がありますか?

分類Dev

ワークステーションをどのように仮想化する必要がありますか?

分類Dev

ユーザー環境変数を設定するにはどうすればよいですか?(永続的に、セッションではありません)

分類Dev

ユーザーセッション中にのみオブジェクトを永続化するにはどうすればよいですか?

分類Dev

Ubuntu 13.04のネットブックで128Gb Crucial SSDをどのようにパーティション分割する必要がありますか?

分類Dev

'ag'に永続的な構成オプションを追加するにはどうすればよいですか?

分類Dev

分散キューのバックアップをどのように構成する必要がありますか?

分類Dev

分散キューのバックアップをどのように構成する必要がありますか?

分類Dev

Application_AuthenticateRequestで必要なセッション固有の値を永続化するにはどうすればよいですか?

分類Dev

Python 3.5でサブセットを簡単に比較できるように、データのテーブルをどのように構造化してアクセスする必要がありますか?

分類Dev

単体テストを実行するようにantを構成します。ライブラリはどこにあるべきですか?クラスパスはどのように構成する必要がありますか?ZipExceptionを回避する

分類Dev

中間テーブルをクラスタ化する必要がありますか? もしそうなら、どのようにしますか?

分類Dev

どのように永続的なデータをJava Webアプリに保存する必要がありますか?

分類Dev

アクティブ/パッシブ冗長モデルを使用するアプリケーションは、Kubernetesを使用してどのようにコンテナ化する必要がありますか?

分類Dev

InputManagerでスプリントをどのように構成する必要がありますか?

分類Dev

複数のサービスで構成されるアプリケーションのヘルムチャートをどのように構成する必要がありますか?

分類Dev

uglifyjsでマングルオプションをどのように使用する必要がありますか?

分類Dev

Androidライブラリ用にTravis-CIをどのように構成する必要がありますか?

分類Dev

ネイティブスレッドを永続的にDVM(JVM)に接続しようとすると、どのような影響がありますか?

分類Dev

Tomcatでアプリケーションセッションの最大期間を構成するにはどうすればよいですか?

分類Dev

Webページのモーダルセクションでhtml5要素をどのように使用する必要がありますか?

分類Dev

サーブレットフィルタをどのようにテストする必要がありますか?

分類Dev

Grub2を「永続的に」修正するにはどうすればよいですか?(パーティションが見つかりません)

分類Dev

データをプッシュするときにLaravelセッションの永続性を提供するにはどうすればよいですか?

分類Dev

起動時に特定のセッションをロードするようにAdobeAuditionを構成するにはどうすればよいですか?

分類Dev

永続層からのプライベートセッターを使用してDDDエンティティをどのようにマテリアライズする必要がありますか?

分類Dev

Laravelのalbumsとalbum_imagesをリンクする中間テーブルをどのように呼び出す必要がありますか?

Related 関連記事

  1. 1

    どのように/ ClaimsPrincipalを永続化する必要がありますか?

  2. 2

    partedを使用してRAIDパーティションをどのように作成および構成する必要がありますか?

  3. 3

    partedを使用してRAIDパーティションをどのように作成および構成する必要がありますか?

  4. 4

    ワークステーションをどのように仮想化する必要がありますか?

  5. 5

    ユーザー環境変数を設定するにはどうすればよいですか?(永続的に、セッションではありません)

  6. 6

    ユーザーセッション中にのみオブジェクトを永続化するにはどうすればよいですか?

  7. 7

    Ubuntu 13.04のネットブックで128Gb Crucial SSDをどのようにパーティション分割する必要がありますか?

  8. 8

    'ag'に永続的な構成オプションを追加するにはどうすればよいですか?

  9. 9

    分散キューのバックアップをどのように構成する必要がありますか?

  10. 10

    分散キューのバックアップをどのように構成する必要がありますか?

  11. 11

    Application_AuthenticateRequestで必要なセッション固有の値を永続化するにはどうすればよいですか?

  12. 12

    Python 3.5でサブセットを簡単に比較できるように、データのテーブルをどのように構造化してアクセスする必要がありますか?

  13. 13

    単体テストを実行するようにantを構成します。ライブラリはどこにあるべきですか?クラスパスはどのように構成する必要がありますか?ZipExceptionを回避する

  14. 14

    中間テーブルをクラスタ化する必要がありますか? もしそうなら、どのようにしますか?

  15. 15

    どのように永続的なデータをJava Webアプリに保存する必要がありますか?

  16. 16

    アクティブ/パッシブ冗長モデルを使用するアプリケーションは、Kubernetesを使用してどのようにコンテナ化する必要がありますか?

  17. 17

    InputManagerでスプリントをどのように構成する必要がありますか?

  18. 18

    複数のサービスで構成されるアプリケーションのヘルムチャートをどのように構成する必要がありますか?

  19. 19

    uglifyjsでマングルオプションをどのように使用する必要がありますか?

  20. 20

    Androidライブラリ用にTravis-CIをどのように構成する必要がありますか?

  21. 21

    ネイティブスレッドを永続的にDVM(JVM)に接続しようとすると、どのような影響がありますか?

  22. 22

    Tomcatでアプリケーションセッションの最大期間を構成するにはどうすればよいですか?

  23. 23

    Webページのモーダルセクションでhtml5要素をどのように使用する必要がありますか?

  24. 24

    サーブレットフィルタをどのようにテストする必要がありますか?

  25. 25

    Grub2を「永続的に」修正するにはどうすればよいですか?(パーティションが見つかりません)

  26. 26

    データをプッシュするときにLaravelセッションの永続性を提供するにはどうすればよいですか?

  27. 27

    起動時に特定のセッションをロードするようにAdobeAuditionを構成するにはどうすればよいですか?

  28. 28

    永続層からのプライベートセッターを使用してDDDエンティティをどのようにマテリアライズする必要がありますか?

  29. 29

    Laravelのalbumsとalbum_imagesをリンクする中間テーブルをどのように呼び出す必要がありますか?

ホットタグ

アーカイブ