- 786 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 00:45:09 ]
- > 質問2.:
Spring の HibernateTemplate は基本的にすべての作業を HibernateCallback インターフェイス内で 行う。 この HibernateCallback には、Object doInHibernate(Session session) という関数が定義されており、 この関数に渡される Session は Spring が破棄してくれる。 さらに、Spring では HibernateCallback を実装しなくてもある程度は実行できるようにいくつかの簡単な 関数を HibernateTemplate で提供してくれている。 > return getHibernateTemplate().find("from person"); も、そのうちの一つ。これを、HibernateCallback を使用して実装すると以下のような感じになる。 return getHibernateTemplate().execute(new HibernateCallback() { public Object doInHibernate(Session session) throws HibernateException { Query query = session.createQuery("from person"); return query.list(); } }); Spring のソースを追えばすぐに分かると思う。
|

|