[RESOLVIDO] Update em todos os campos de uma tabela sem carregar objetos com Hibernate
3 respostas
faelbsr
Boa tarde, pode parecer uma dúvida idiota e talvez a solução seja bem simplória.
Estou precisando realizar um update em todos os campos de uma tabela e não quero carregar todos os objetos relacionados, alterar o atributo e persistir o objeto.
Tem como eu executar um sql diretamente no banco pelo Hibertate.
//ENTIDADE@Entity@Table(catalog="nome_banco",name="graduacao_grade")@NamedQuery(name="grade",query="UPDATE Grade g SET g.ativo = :at WHERE g.faculdade = :facul")publicclassGradeimplementsjava.io.Serializable{...}//BEANpublicvoidfecharMatricula(){Sessionsession=getSession();if(!session.getTransaction().isActive()){session.getTransaction().begin();}QuerynamedQuery=session.getNamedQuery("grade");namedQuery.setParameter("facul",AppUtil.getFaculdade());namedQuery.setParameter("at",false);namedQuery.executeUpdate();namedQuery.executeUpdate();session.getTransaction().commit();session.flush();session.clear();}//end method