CJEE B Ejercicio 02 SgaConJPA
CJEE B Ejercicio 02 SgaConJPA
CJEE B Ejercicio 02 SgaConJPA
mx
•El objetivo del ejercicio agregar persistencia con JPA a nuestro proyecto SGA (Sistema de
Gestión de Alumnos). Al finalizar deberemos observar el siguiente resultado:
Persona
Inyección
PersonaServiceImpl Dependenci PersonaDaoImpl
a
Entidad
Implementación
EJB Stateless EJB EJB Stateless
Implementación
y API JPA
con JPA
www.gl obal mentoring.com .mx
En caso que no tengamos abierto el proyecto sga-jee lo
abrimos:
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
@Entity
@NamedQueries({
@NamedQuery(name = "Persona.findAll", query = "SELECT p FROM Persona p ORDER BY p.idPersona")})
@Table(name = "persona")
public class Persona implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id_persona")
private int idPersona;
import java.util.List;
import mx.com.gm.sga.domain.Persona;
import java.util.List;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
import mx.com.gm.sga.domain.Persona;
@Stateless
public class PersonaDaoImpl implements PersonaDao {
@PersistenceContext(unitName = "PersonaPU")
EntityManager em;
@Override
public List<Persona> findAllPersonas() {
return em.createNamedQuery("Persona.findAll").getResultList();
}
@Override
public Persona findPersonaById(Persona persona) {
return em.find(Persona.class, persona.getIdPersona());
}
import java.util.List;
import javax.inject.Inject;
import javax.ejb.Stateless;
import mx.com.gm.sga.domain.Persona;
import mx.com.gm.sga.eis.PersonaDao;
@Stateless
public class PersonaServiceImpl implements PersonaServiceRemote, PersonaService {
@Inject
private PersonaDao personaDao;
@Override
public List<Persona> listarPersonas() {
return personaDao.findAllPersonas();
}
@Override
public Persona encontrarPersonaPorId(Persona persona) {
return personaDao.findPersonaById(persona);
}
http://icursos.net/cursos/JavaJDBC/drivers/mysql-driver.jar
portNumber 3306
databaseName recursos_humanos
datasourceName com.mysql.jdbc.Driver
serverName localhost
user root
password admin