MyBatisの統合後のキャッシュと春について

MyBatisの統合後のキャッシュと春について

一人でMyBatisのを使用する場合は、キャッシュが有効で、同じクエリのSQLセッションで2回、だけ印刷された一回SQL文。キャッシュMyBatisのを使用した春は失敗しますMyBatisのときしかし、それは二回SQL印刷されます。

それは春にMyBatisの際に、キャッシュMyBatisのは失敗します、です。

その理由は次のとおりです。

SqlSessionTemplateに置き換え元DefaultSqlSessionと組み合わせて使用され、我々はsqlSession.selectList方法はfianlly invokeメソッド、メソッドを呼び出すSqlSessionInterceptorの呼び出しを実行するときSqlSessionTemplate SQLSESSIONは、プロキシオブジェクトに置き換えMyBatisのとスプリング、私たちのセッションが閉じSqlSessionUtils.closeSqlSession(SQLSESSION、SqlSessionTemplate.this.sqlSessionFactory)を呼び出します。それが私たちに露出しているため、ネイティブではない理由のセッションに、なぜ、閉じたセッションをMyBatisのない、そして春の使用と合わせて、露光セッションのための方法を提供していないとき、それはここでしかでシャットダウンすることができますが、セッションがクローズされると、そのキャッシュ当然無効。
----------------
オリジナルリンクします。https://blog.csdn.net/qiuz1024/article/details/100534709

おすすめ

転載: www.cnblogs.com/liuqijia/p/11588036.html