package br.com.colibri.dao;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.orm.hibernate3.HibernateTemplate;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
import br.com.colibri.modelo.Filme;
@Repository(value="filmeHibernateDAO")
public class FilmeHibernateDAO {
@Autowired
private HibernateTemplate hibTemplate;
@Transactional
public void inserir(Filme filme) throws Exception {
this.hibTemplate.persist(filme);
}
@Transactional
public void remover(Filme filme) throws Exception {
this.hibTemplate.delete(filme);
}
@Transactional
public Filme obterPorId(Long id) throws Exception {
Filme filme = this.hibTemplate.get(Filme.class, id);
return filme;
}
@Transactional
public List<Filme> obterTodosOsFilmes() throws Exception {
List<Filme> filmes = this.hibTemplate.find("from Filme");
return filmes;
}
@Transactional
public void atualizar(Filme filme) throws Exception {
this.hibTemplate.update(filme);
}
@Transactional
public List<Filme> obterFilmePorNome(String nome) throws Exception {
List<Filme> filmes =
this.hibTemplate.find("from Filme f where f.nome like ?", "%" + nome + "%");
return filmes;
}
public HibernateTemplate getHibTemplate() {
return hibTemplate;
}
public void setHibTemplate(HibernateTemplate hibTemplate) {
this.hibTemplate = hibTemplate;
}
}