Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Employee
Employee
package edu.upc.entity;
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.Table;
@Entity
@Table(name = "employee")
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
return idEmployee;
}
this.idEmployee = idEmployee;
return firstNameEmployee;
this.firstNameEmployee = firstNameEmployee;
return lastNameEmployee;
this.lastNameEmployee = lastNameEmployee;
return emailEmployee;
this.emailEmployee = emailEmployee;
}
}
//edu.upc.service
IEmployeeSERVICE.java ->Interface
package edu.upc.service;
import java.util.List;
import edu.upc.entity.employee;
ISERVICE.java ->Interface
package edu.upc.service;
import java.util.List;
//edu.upc.serviceimpl
employeeSERVICEImpl.java ->Class
package edu.upc.serviceimpl;
import java.io.Serializable;
import java.util.List;
import javax.ejb.EJB;
import javax.enterprise.context.RequestScoped;
import javax.inject.Named;
import edu.upc.dao.IEmployeeDAO;
import edu.upc.entity.employee;
import edu.upc.service.IEmployeeSERVICE;
@Named
@RequestScoped
@EJB
@Override
try {
eDAO.insertar(t);
} catch (Exception e) {
e.getMessage();
@Override
try {
eDAO.actualizar(t);
} catch (Exception e) {
e.getMessage();
}
}
@Override
try {
eDAO.eliminar(idT);
} catch (Exception e) {
e.getMessage();
@Override
return eDAO.listar();
@Override
return eDAO.listarId(idT);
@Override
return eDAO.buscarnombre(employee);
//edu.upc.daoimpl
employeeDAOImpl.java->Class
package edu.upc.daoimpl;
import java.io.Serializable;
import java.util.List;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
import edu.upc.dao.IEmployeeDAO;
import edu.upc.entity.employee;
@Stateless
@PersistenceContext(unitName = "examenparcialPU")
@Override
try {
manager.persist(t);
} catch (Exception e) {
e.getMessage();
@Override
manager.merge(t);
} catch (Exception e) {
e.getMessage();
@Override
try {
manager.remove(empl);
} catch (Exception e) {
e.getMessage();
@SuppressWarnings("unchecked")
@Override
try {
} catch (Exception e) {
e.getMessage();
return lista;
}
@SuppressWarnings("unchecked")
@Override
try {
query.setParameter(1, idT);
em=lista.get(0);
} catch (Exception e) {
e.getMessage();
return em;
@SuppressWarnings("unchecked")
@Override
try {
} catch (Exception e) {
e.getMessage();
return lista;
//edu.upc.dao
IDAO.java – Interface
package edu.upc.dao;
import java.util.List;
IEmployeeDAO.java – Interface
package edu.upc.dao;
import java.util.List;
import javax.ejb.Local;
import edu.upc.entity.employee;
@Local
//edu.upc.controller
EmployeeController.java – Class
package edu.upc.controller;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.PostConstruct;
import javax.enterprise.context.SessionScoped;
import javax.inject.Inject;
import javax.inject.Named;
import edu.upc.entity.employee;
import edu.upc.service.IEmployeeSERVICE;
@Named
@SessionScoped
@Inject
@PostConstruct
this.listarEmployee();
}
public String nuevoEmployee() {
this.setEmployee(new employee());
return "employee.xhtml";
try {
if (employee.getIdEmployee() > 0) {
employeeService.actualizar(employee);
limpiarEmployee();
} else {
employeeService.insertar(employee);
limpiarEmployee();
this.listarEmployee();
} catch (Exception e) {
e.getMessage();
try {
employeeService.eliminar(employee.getIdEmployee());
listarEmployee();
} catch (Exception e) {
e.getMessage();
listaempleados = employeeService.listar();
} catch (Exception e) {
e.getMessage();
try {
employee = employeeService.listarId(empl.getIdEmployee());
} catch (Exception e) {
e.getMessage();
try {
if (employee.getFirstNameEmployee().isEmpty()) {
this.listarEmployee();
} else {
listaempleados=this.employeeService.buscarnombre(this.getEmployee());
} catch (Exception e) {
e.getMessage();
this.init();
}
// gets y sets
return employee;
this.employee = employee;
return listaempleados;
this.listaempleados = listaempleados;
BEANS.XML
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/beans_2_0.xsd"
version="2.0" bean-discovery-mode="all">
</beans>
PERSISTENCE.XML
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1"
xmlns="http://xmlns.jcp.org/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
<persistence-unit name="examenparcialPU"
transaction-type="JTA">
<jta-data-source>java:/parcialDS</jta-data-source>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="hibernate.hbm2ddl.auto" value="create" />
</properties>
</persistence-unit>
</persistence>
//VISTASxhtml
//employee.xhtml
<ui:composition template="master.xhtml">
<ui:define name="title">
.:Registro de Empleados:.
</ui:define>
<ui:define name="titleCont">
<span>Registro de Empleados </span>
</ui:define>
<ui:define name="content">
<h:form>
<h:outputLabel for="idEmpl" value="Id "
styleClass="control-label" />
value="#{employeeController.employee.firstNameEmployee}"
required="true" maxlength="30" />
<h:outputLabel for="apellEmpl" value="Apellido: "
styleClass="control-label" />
value="#{employeeController.employee.lastNameEmployee}"
required="true" maxlength="30" />
value="#{employeeController.employee.emailEmployee}"
required="true" maxlength="30" />
<p:commandButton value="Grabar"
actionListener="#{employeeController.insertarActualizar()}"
styleClass="btn btn-primary " update="@form"
action="listEmployee?faces-redirect=true" />
<p:commandButton value="Cancelar"
action="listEmployee?faces-redirect=true"
immediate="true"
styleClass="btn btn-default" ajax="false" />
</h:form>
</ui:define>
<ui:define name="footerCont">
</ui:define>
</ui:composition>
</html>
//index.xhtml
<h:head></h:head>
<body>
<h:form>
<h:commandLink value="Ir" action="panel" />
</h:form>
</body>
</html>
//listEmployee.xhtml
<ui:composition template="master.xhtml">
<ui:define name="title">
.:Listado de Empleados:.
</ui:define>
<ui:define name="titleCont">
<span>Listado de Empleados </span>
</ui:define>
<ui:define name="content">
<h:form>
<div class="row">
<div class="col-sm-4">
<div class="form-group">
<h:outputLabel for="nombres"
value="Nombres:"
styleClass="control-label" />
<p:inputText autocomplete="off"
id="nombres"
styleClass="form-control"
value="#{employeeController.employee.firstNameEmployee}"
maxlength="120" />
</div>
</div>
actionListener="#{employeeController.limpiarEmployee()}"
styleClass="btn btn-default"
ajax="false" />
<p:commandButton value="Buscar"
update="lstEmployee"
actionListener="#{employeeController.buscarEmployeeNombre()}"
styleClass="btn btn-default btn-
border" ajax="true" />
<p:commandButton value="Nuevo"
action="#{employeeController.nuevoEmployee()}"
styleClass="btn btn-primary"
ajax="false" />
</div>
</div>
</div>
<div class="row">
<div class="col-sm-12">
<div class="form-group table-responsive box-
table-class">
<p:dataTable id="lstEmployee"
var="employee"
value="#{employeeController.listaempleados}"
paginator="true"
paginatorPosition="top"
rowsPerPageTemplate="10,20,30,40,50" rows="10"
styleClass="table table-
bordered"
emptyMessage="No existen
registros" rowIndexVar="item"
style="margin-bottom:0">
<p:column headerText="Item"
style="width:40px;text-align:center">
<h:outputText
value="#{item + 1}" />
</p:column>
<p:column headerText="Id">
<h:outputText
value="#{employee.idEmployee}" />
</p:column>
<p:column headerText="Nombre">
<h:outputText
value="#{employee.firstNameEmployee}" />
</p:column>
<p:column headerText="Apellido">
<h:outputText
value="#{employee.lastNameEmployee}" />
</p:column>
<p:column headerText="Email">
<h:outputText
value="#{employee.emailEmployee}" />
</p:column>
<p:column
headerText="Operación">
<h:commandLink
action="listEmployee" value="Eliminar"
actionListener="#{employeeController.eliminar(employee)}" />
</p:column>
<p:column
headerText="Operación">
<h:commandLink
action="employee" value="Actualizar"
actionListener="#{employeeController.listarId(employee)}" />
</p:column>
</p:dataTable>
</div>
</div>
</div>
</h:form>
</ui:define>
<ui:define name="footerCont">
</ui:define>
</ui:composition>
</html>
//master.xhtml
<!DOCTYPE html>
<html lang="es" class="no-js" xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<h:head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta charset="utf-8" />
<title><ui:insert name="title"></ui:insert></title>
<meta name="generator" content="Bootply" />
<meta name="viewport"
content="width=device-width, initial-scale=1, maximum-scale=1"
/>
<link
href='https://fonts.googleapis.com/css?family=Roboto:400,300,500|Ubunt
u+Condensed'
rel='stylesheet' type='text/css' />
</h:head>
<h:body>
<!--main-->
<div class="container base_fondo_fff"
style="min-height: 600px; border-radius: 4px; margin-top:
35px;">
<div class="row">
<!--left-->
<div class="col-md-3" id="leftCol">
<ul class="nav nav-stacked" id="sidebar">
<li id="sidebar-1"><a href="panel.xhtml"><i
class="icon-home"></i>
Inicio</a></li>
<li id="sidebar-2"><a
href="listEmployee.xhtml"><i
class="icon-user"></i>
Empleado</a></li>
</ul>
</div>
</div>
<!--/right-->
</div>
<!--/row-->
</div>
<!--/container-->
<ui:insert name="footerCont"></ui:insert>
</h:body>
</html>
//panel.xhtml
<ui:composition template="master.xhtml"
xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:p="http://primefaces.org/ui"
xmlns:ui="http://java.sun.com/jsf/facelets">
<ui:define name="title">
.:Listado de Tabla :.
</ui:define>
<ui:define name="titleCont">
<span>Inicio </span>
</ui:define>
<ui:define name="content">
<h:form>
Bienvenido!!! a IO Visor Project
</h:form>
</ui:define>
<ui:define name="footerCont">
</ui:define>
</ui:composition>
//POM
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>edu.upc</groupId>
<artifactId>ExamenParcial</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<build>
<finalName>ExamenParcial</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>7.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.sun.faces</groupId>
<artifactId>jsf-api</artifactId>
<version>2.2.13</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.sun.faces</groupId>
<artifactId>jsf-impl</artifactId>
<version>2.2.13</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.primefaces</groupId>
<artifactId>primefaces</artifactId>
<version>6.0</version>
</dependency>
<dependency>
<groupId>org.omnifaces</groupId>
<artifactId>omnifaces</artifactId>
<version>2.5.1</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>prime-repo</id>
<name>PrimeFaces Maven Repository</name>
<url>http://repository.primefaces.org</url>
<layout>default</layout>
</repository>
</repositories>
</project>