@duffymo のアドバイスに +1。Hibernate はまったくの別物であり、SQL のコーディングに慣れている人が ORM ツールに切り替えるのは特に困難です。つまり、Hibernate が私の「すばらしい」SQL コードよりも優れた仕事をしてくれるとは信じていなかったので、Hibernate ですべての作業を快適に行えるようになるまでにしばらく時間がかかりました。しかし、時間が経つにつれて、適切に構成されていれば、 Hibernate がうまく機能していることを受け入れるようになりました。:)
@john、@duffymo が述べたように、最初に JSP + Servlet + Spring から始めます。Spring の JbcTemplate を使用するように DAO クラスを変換します。これにより、既存の DAO クラスのインターフェイスを作成する必要があります。DAO クラスがステートレスであることを確認してください。これにより、テストケースで簡単にテストできます。
サーブレットがこれらの DAO を利用するには、次のようなことを行う必要があります...
ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(servletContext);
SomeDao dao = (SomeDao) ctx.getBean("someDao");
dao.doStuff(..);
DAO を取得するための「少し醜い」コードの理由は、この時点で Spring がサーブレットを管理していないため、Spring が DAO をサーブレットに直接接続できないためです。
このすべてが機能するようになったら、Spring の IoC がどのように機能するかについてある程度理解する必要があります。これで、サーブレットを交換して Spring MVC に置き換えることができます。Web パーツを安らかに構築できるように、Spring MVC 3.x を使用することをお勧めします。私の正直な意見では、Spring MVC 2.x よりもはるかに簡単でクリーンです。
さて、JSP + Spring MVC + Spring + JdbcTemplate が動作するようになったら、データベース モジュールを JdbcTemplate から Hibernate に交換する良い機会になると思います。インターフェイスごとにコーディングするため、他のモジュールへの波及効果はありません。さらに、まったく同じテストケースを再利用して、Hibernate DAO クラスのがらくたをテストできます。甘い。:)
...そして、それがJSP + Spring MVC + Spring + Hibernateで終わる方法です。:)
このすべてを小さなチャンクに分割すると、学習と消化がずっと簡単になります。少なくとも、開発中に問題が発生し始めたとき、問題を理解しようとして悪口のボキャブラリーを間接的に改善することはありません。