TomcatでSpringを使用して1つのアプリケーションを作成し、JBoss AS7でJavaEE(EJB + JSF)を使用して2番目のアプリを作成しました。ORMとしてHibernateを選択するか、そう思います。
旅行のオファーがあるページがあるとします。リンクをクリックすると、AJAXを使用して旅行の説明を読み込むことができます。
Springバージョンでは、説明リンクを選択した後、1つのクエリのみがデータベースに送信されます。これはいい。
しかし、Java EEバージョンでは、同じ場合、7つのクエリが送信されます。現在のサイトに表示されている各旅行オファーの7つのクエリ。したがって、4つのトリップオファーが表示された場合、4*7のSQLクエリがあります。そのため、パフォーマンスが低くなります。
サービス層、つまりSQLクエリは、両方のバージョンで同じです。Springバージョンでは、リクエストはjQueryを使用して(郵送で)送信されます。Java EEでは、JSFAJAXサポートを使用しています。
この動作の原因は何ですか?よくわかりませんが、JavaEEバージョンではHibernateが実際に使用されていない可能性がありますか?persistence.xmlには、次のものがあります<provider>org.hibernate.ejb.HibernatePersistence</provider>
。