無名クラスへのパラメータ渡し
実は無名クラスはほとんど使ったことがないので調べた。
finalにしておかないといけないようだ。
ということは先ほどのサンプルだとこんな感じになる。
http://www2.coins.tsukuba.ac.jp/~i021216/diary/?date=20060205#p01
public List getProductList(final String id) { return getHibernateTemplate().executeFind(new HibernateCallback() { public Object doInHibernate(Session session) throws HibernateException { Criteria criteria = session.createCriteria(Product.class); criteria.add(Restrictions.eq("hogeId", id)); //criteria.addOrder(Order.asc("title")); return criteria.list(); }); }
コンパイルは通してないので嘘かも知れないけど・・・。
ついでにメモ。
無名クラス=匿名クラス=anonymous class
※2006/09/14:final引数に修正