S2hibernate.daoのアノテーションなしのDto対応(HibernteのExampleの様な機能)

HibernateのQBE(Query by Example)では、IDのフィールドを検索条件にすることができませんが、このアノテーションなしのDto対応を使うとIDも含めることができます。
(IDを含めて検索条件に出来ることが良いかどうかは、別として。。。)


  Daoインターフェースで、アノテーションなし指定で、メソッドの引数がDto1つの場合の処理。

  渡されてたDtoのNullでないプロパティを検索条件にして、オブジェクトを検索します。

  (nullでないもを検索条件にするので、プリミティブ型は想定していません。)


ドキュメントの追加ができていないのですが、とりあえず
 EmployeeDaoEmployeeDtoTest.java
 EmployeeDaoSimpleDtoTest.java
 EmployeeDaoSearchDtoTest.java
あたりと関連ファイルを見ていただけると助かります。


・daoの例(EmployeeAutoDao.javaから抜粋)


//〜〜 略 〜〜
public interface EmployeeAutoDao {
public Class BEAN = Employee.class;

//〜〜 中略 〜〜

//dtoを指定して処理する場合
public List getEmployeeByEmployeeDtoAuto( Employee dto );
}


・EmployeeAutoDaoSimpleDtoClientのMainから抜粋


//〜〜 略 〜〜
EmployeeAutoDao dao = (EmployeeAutoDao) container
.getComponent(EmployeeAutoDao.class);/* 手順2 */

Employee emp = new Employee();

emp.setJob( "MANAGER" );
emp.setDeptno( new Integer(20) );

List ret = dao.getEmployeeByEmployeeDtoAuto(emp);

System.out.println("RET:" + ( (Employee)ret.get(0) ).getEname() );/* 手順3 */
//〜〜 略 〜〜