内の複数の要求私は、この持っている:ルミナス - 私のルミナスアプリで同じDB接続
(defn page1 [id]
(layout/render "page1.html"
{:article (db/get-single-article {:id (Integer/parseInt id)}))
を私は、同じDB接続内のDBに複数の異なる要求を実行します。どうやってやるの?
内の複数の要求私は、この持っている:ルミナス - 私のルミナスアプリで同じDB接続
(defn page1 [id]
(layout/render "page1.html"
{:article (db/get-single-article {:id (Integer/parseInt id)}))
を私は、同じDB接続内のDBに複数の異なる要求を実行します。どうやってやるの?
複数のHTTP要求を処理するために同じDB接続を再利用するか、JDBC APIを使用して複数の関数を呼び出す単一のHTTP要求(これらすべてのJDBC呼び出しで同じDB接続を使用するか)は不明です。
これが後者の場合、with-db-connection
を使用して、JDBC APIを呼び出すすべての関数をラップすることができます。また、すべてのSQL操作を1つのDBトランザクションに含める必要がある場合は、with-db-transaction
を使用することもできます。
前者の場合、複数のHTTP要求に対して同じ接続を再利用する必要があるのかどうかはわかりませんが、HTTPはステートレスで複数の問題が発生するため、共通の慣用表現ではありません。
ring HTTP sessionに接続を保存すると、セッションに関連付けられた要求を取得してJDBCロジックに使用するたびにフェッチできます。
しかし、このような解決策には欠点を以下ました:
同じdb接続またはdbトランザクションを使用しますか? –
@PiotrekBzdyl、接続。 –