Olá pessoal, sou novata na área… preciso implementar um metodo de inserção de dados, mas não estou sabendo como implementar, estou utilizando JPA, JSF e hibernate para persistência dos dados na classe, no eclipse. Caso alguém possa me ajudar… muito obrigada.
Classe do objeto
mport javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name=“FUNCIONARIO”)
public class Funcionario {
private int id;
private String nome;
private String cargo;
private double salario;
private double horasExtras;
public Funcionario(){
}
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE)
@Column(name="ID_FUNCIONARIO")
public int getId(){
return id;
}
public void setId(int id){
this.id = id;
}
@Column(name="NOME", nullable = false, length = 80, insertable = true, updatable = true)
public String getNome(){
return nome;
}
public void setNome(String nome){
this.nome = nome;
}
@Column(name="CARGO", nullable = false, length = 60, insertable = true, updatable = true)
public String getCargo(){
return cargo;
}
public void setCargo(String cargo){
this.cargo = cargo;
}
@Column(name="SALARIO", precision = 8, scale = 0)
public double getSalario(){
return salario;
}
public void setSalario(double salario){
this.salario = salario;
}
@Column(name="HORAS_EXTRAS", precision = 8, scale = 0)
public double getHorasExtras(){
return horasExtras;
}
public void setHorasExtras(double horasExtras){
this.horasExtras = horasExtras;
}
public String toString() {
StringBuilder sb = new StringBuilder("---------------------");
sb.append("\nId...........: ").append(this.id);
sb.append("\nNome.........: ").append(this.nome);
sb.append("\nCargo........: ").append(this.cargo);
sb.append("\nSalario......: ").append(this.salario);
sb.append("\nHoras Extras.: ").append(this.horasExtras);
return sb.toString();
}
}
classe de DAO
import java.util.ArrayList;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
import javax.persistence.NonUniqueResultException;
import javax.persistence.Query;
import br.empresa.resources.HibernateEntityManagerFactory;
public class FuncionarioHibernate implements ManterFuncionario {
private EntityManager em = HibernateEntityManagerFactory
.getEntityManagerFactory().createEntityManager();
/....../
public void inserir(Funcionario funcionario) {
em.getTransaction().begin();
em.persist(funcionario);
em.getTransaction().commit();
}
}
CLASSE Q NÃO ESTOU SABENDO IMPLEMENTAR
import java.sql.SQLException;
import java.sql.Statement;
import br.empresa.Funcionario;
import br.empresa.FuncionarioHibernate;
import br.empresa.ManterFuncionario;
public class ServicoFuncionario {
ManterFuncionario func = EmpresaFactory.getManterFuncionario();
public void inserirFuncionario(Funcionario funcionario) {
@SuppressWarnings("unused")
Funcionario fun = new Funcionario();
func.inserir(funcionario);
Statement stmt = null;
String sql = "insert into FUNCIONARIO(id, nome, cargo, salario, horasExtras) "
+ "values(?,?,?,?,?)";
try {
stmt.execute(sql);
} catch (SQLException e) {
e.printStackTrace();
}
}