0

休止状態 (JPA) を使用してデータをクエリし、休止状態セッションが閉じられたなどの状況に違反することなく jsp に表示できる struts2 とうまく連携する休止状態プラグインを探しています。

最新の struts2、Hibernate (JPA) を使用しています。

Hibernate から Spring DAO または JPA を使用する方が良いですか? 私はJPAの方が好きです。

最新の struts2 と Hibernate で Full HIbernate Plugin を使用することは可能ですか?

助けてください。

ありがとう。

4

1 に答える 1

0

In order to accomplish this task you don't need a full hibernate plugin. You are looking to implement the Open Session In View pattern. Basically the idea is to implement a servlet filter that opens a hibernate session, passes control to the rest of the filter chain, and then closes the filter once execution is complete. In this manner your view has an open session to play with, and it gets closed in the end. However, it should be pointed out that some people view this as an anti-pattern, since it does allow your view code to trigger a large number of database related operations via lazy loading and such. This is definitely something to keep in mind.

オンラインには多くの例があり、通常は OSIV という略語で書かれています。ここでは、オープン ソース化された元雇用主のために私が書いたストレート ハイバネートを使用した例を示します。これの元のバージョンは 2007 年くらいに書かれたもので、最近 SVN から GIT に移行したと思います。

https://fisheye.5amsolutions.com/browse/5AMCOM/core/src/main/java/com/fiveamsolutions/commons/web/filter/OpenSessionInViewFilter.java?r=78fe9215dcbdea11ed54e7446bf19f779cb13770

これを含むオープン ソース ライブラリのホームページは次のとおりです。

https://www.5amsolutions.com/how-we-do-it/5am-commons

完全な JPA ソリューションを使用する場合、Spring には Open Entity Manager in View フィルターが含まれています。

http://static.springsource.org/spring/docs/3.1.x/javadoc-api/org/springframework/orm/jpa/support/OpenEntityManagerInViewFilter.html

Spring を何年も使用していないので、その特定のクラスは使用していませんが、Spring のものは通常非常にうまく機能します。

このトピックに関する最後のリンクは、休止状態のドキュメントから数年前のものです: https://community.jboss.org/wiki/OpenSessionInView

于 2012-10-03T21:34:23.333 に答える