Olá pessoal. Estou fazendo um sistema utilizando o padrão DAO Genérico para as operações básicas. Tenho um método listar o qual me retorna n registros de acordo com os campos que estiverem preenchidos em uma entity. O método é o seguinte:
public List listar(Object classe) {
log.debug("Entrou no método listar");
try {
Criteria criteria = sessao.createCriteria(classe.getClass());
criteria.add(Example.create(classe));
criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
log.debug("Executou o método listar com sucesso");
return criteria.list();
} catch (RuntimeException re) {
log.error("Erro na execução do método listar", re);
throw re;
}
}
Eu tenho entities que possuem atributos os quais eu gostaria de pesquisar usando like.
Existe algum método de fazer com que o Hibernate use like em todos os campos, tipo, pra que eu não tenha q criar um DAO pra cada entity colocando Expression.like pra cada atributo?