spring hibernate3.0複数条件クエリーの解決方法
以前のいくつかのソリューションでは、マルチ条件クエリーについてSQL文を使用していましたが、hibernate 3.0中国語を入力すると、文字化けしてしまうので、別の方法で解決するしかありません.私はみんながステーションマークを使うと言っているのを見て、しかしとても詳しい説明がなくて、ステーションマークを採用して、どのように多条件差のクエリーを実現します;以下は、ドキュメントを見て書いたテスト方法です.
useridクエリーに基づいて:
useridとdepartmentに基づいてクエリーを行います.
結果を正確に照会することができますが、1つ以上の照会条件を入力すると、どのように実現すればいいか分かりません.私が入力したクエリー条件の個数は不確定だからです.もちろん、私が検索する条件の個数が多くなければ、以下を判断すればいいのですが、条件が多ければ、判断では明らかにだめです.
この問題をどう解決すればいいか教えてください.
useridクエリーに基づいて:
public List searchSysusers(Sysuser sysuser){
SessionFactory sessionFactory=getHibernateTemplate().getSessionFactory();
Session sess=sessionFactory.openSession();
List list=sess.createCriteria(Sysuser.class)
.add(Restrictions.eq("userid", "test1")).list();
sess.close();
return list;
}
useridとdepartmentに基づいてクエリーを行います.
public List searchSysusers(Sysuser sysuser){
SessionFactory sessionFactory=getHibernateTemplate().getSessionFactory();
Session sess=sessionFactory.openSession();
List list=sess.createCriteria(Sysuser.class)
.add(Restrictions.eq("userid", "test1"))
.add(Restrictions.like("department","% %")).list();
sess.close();
return list;
}
結果を正確に照会することができますが、1つ以上の照会条件を入力すると、どのように実現すればいいか分かりません.私が入力したクエリー条件の個数は不確定だからです.もちろん、私が検索する条件の個数が多くなければ、以下を判断すればいいのですが、条件が多ければ、判断では明らかにだめです.
この問題をどう解決すればいいか教えてください.