Pessoal, boa noite,
estou fazendo o curso de formação java e como nao tenho experiencias com linguagem de programacao e estou iniciando no java, peço a ajuda de todos.
estou tentando utilizar o hibernate para melhorar o codigo DAO do meu projeto, só que estou com uma dúvida, eu ja tinha o Struts2, com as actions funcionando normalmente, e o DAO também, só que agora estou utilizando o hibernate, o DAO ficou bem menor, eu testei com uma classe com o main e cadastra no banco normalmente, porem no projeto web, como eu faria na action pra utilizar o metodo salva do ContatoDAO com hibernate?
vou colar a classe DAO e o action.
ContatoDAO
package br.com.mensalidade.hibernate.DAO;
import java.util.List;
import org.hibernate.Session;
import br.com.mensalidade.Classes.Contato;
public class ContatoDAO {
private Session session;
public ContatoDAO(Session session){
this.session = session;
}
public void salva(Contato c) {
this.session.save(c);
}
public void remove(Contato c) {
this.session.delete(c);
}
public Contato procura(Long id) {
return (Contato) this.session.load(Contato.class, id);
}
public void atualiza(Contato c) {
this.session.update(c);
}
public List<Contato> listaTudo() {
return this.session.createCriteria(Contato.class).list();
}
}
agora o Action do Struts2
import org.hibernate.Session;
import br.com.mensalidade.Classes.Contato;
import br.com.mensalidade.hibernate.HibernateUtil;
import br.com.mensalidade.hibernate.DAO.ContatoDAO;
public class AdicionaContatoAction {
private Contato contato;
@Action(value="CadastraContato", results = {
@Result(name="ok", location="/tarefa-adicionada.jsp")
})
public String execute() {
Session session = new HibernateUtil().getSession();
new ContatoDAO(session);
ContatoDAO.salva(contato);
return "ok";
}
public Contato getContato() {
return this.contato;
}
public void setContato(Contato contato) {
this.contato = contato;
}
}
como eu invocaria o metodo salva do hibernate?
SDS
Leandro Mouzer
Significa que o Hibernate (hibernate3.jar) nao esta na classpath (deveria estar em WEB-INF/lib, provavelmente). Nao se esqueca de colocar tambem as dependencias do Hibernate.