教えを求めます:hibernateはクエリをして、Restrictionsについて.orの問題


クエリーの機能では、実装する必要があります.
where a='b' and c='d' and (e like '%f%' or g like '%h%' or j like '%k%' or ....)
の機能で、括弧の中のor文は動的で、個数は不定です.
前のa='b'and c='d'は使用できます
DetachedCriteria detachedCriteria=DetachedCriteria.forClass(abc.class);
detachedCriteria.add(Restrictions.eq("a","b"));
detachedCriteria.add(Restrictions.eq("c","d"));

しかし、後のクエリ条件を追加するとRestrictionsが発見される.orは2つの条件のorクエリーのみをサポートし、hibernateマニュアルのインスタンスは以下の通りです.
List cats = sess.createCriteria(Cat.class)
    .add( Restrictions.like("name", "Fritz%") )
    .add( Restrictions.or(
        Restrictions.eq( "age", new Integer(0) ),
        Restrictions.isNull("age")
    ) )
    .list();

皆さん、この問題をどう解決すればいいか教えてください.
どうもありがとうございます.