Ing. Pablo Almeida Haro Msc.
JSF ESTATICO
*Crear un proyecto: file/new/ web aplicapplication
*Seleccionar el servidor, versión de jee y ruta de inicio
*Seleccionar el framework JSF
*En la página index.xhtml que se creó automáticamente colocar el código que sigue a continuación:
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html">
<h:head>
</h:head>
<h:body>
<h:form id="form">
<h:outputText value="CLIENTES"/>
<br></br><br></br>
<h:outputText value="Código:"/>
<h:inputText id="codigo" value="#{cliente.codigo}" />
<br></br>
<h:outputText value="Nombre:"/>
<h:inputText id="nombre" value="#{cliente.nombre}"/>
<br></br><br></br>
<h:commandButton id="insertar" value="Insertar" action="#{cliente.insertar}"> </h:commandButton>
<h:commandButton id="eliminar" value="Eliminar" action="#{cliente.eliminar}" > </h:commandButton>
<h:commandButton id="modificar" value="Modificar" action="#{cliente.modificar}"> </h:commandButton>
<h:commandButton id="buscar" value="Buscar" action="#{cliente.buscar}"> </h:commandButton>
<br></br><br></br>
<h:outputText value="#{cliente.mensaje}"/>
</h:form>
</h:body>
</html>
*Crear el backing bean: click derecho sobre source packages/java class
*Colocar el código que sigue a continuación:
package pkg_jsf_crud;
import java.util.List;
import javax.faces.bean.SessionScoped;
import javax.faces.bean.ManagedBean;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.persistence.Query;
@ManagedBean()
@SessionScoped
public class cliente
{ public String codigo="";
public String nombre="";
public String mensaje="";
EntityManagerFactory factory=Persistence.createEntityManagerFactory("prj_jsf_crudPU");
EntityManager em1=factory.createEntityManager();
public cliente ()
{
}
public String getcodigo() {
return codigo;
}
public void setcodigo(String as_codigo) {
this.codigo = as_codigo;
}
public String getnombre() {
return nombre;
}
public void setnombre(String as_nombre) {
this.nombre = as_nombre;
}
public String getmensaje() {
return mensaje;
}
public void setmensaje(String as_mensaje) {
this.mensaje = as_mensaje;
}
public void insertar()
{
String sql ="insert into cliente (codigo,nombre) values ('"+codigo+"'"+","+"'"+nombre+"')";
em1.getTransaction().begin();
Query qe=em1.createNativeQuery(sql);
try
{
qe.executeUpdate();
em1.getTransaction().commit();
mensaje="Se insertó satisfactoriamente";
}
catch (Exception ex)
{ em1.getTransaction().rollback();
mensaje="No se pudo insertar";
}
}
public void eliminar()
{
String sql ="delete from cliente where codigo='"+codigo+"'";
em1.getTransaction().begin();
Query qe=em1.createNativeQuery(sql);
int li_filas= qe.executeUpdate();
if (li_filas>=1)
{
em1.getTransaction().commit();
mensaje="Se eliminó satisfactoriamente";
}
else
{
em1.getTransaction().rollback();
mensaje="No se pudo eliminar";
}
}
public void modificar()
{
String sql ="update cliente set nombre='"+nombre+"' where codigo='"+codigo+"'";
em1.getTransaction().begin();
Query qe=em1.createNativeQuery(sql);
int li_filas=qe.executeUpdate();
if (li_filas>=1)
{
em1.getTransaction().commit();
mensaje="Se actualizó satisfactoriamente";
}
else
{
em1.getTransaction().rollback();
mensaje="No se pudo modificar";
}
}
public void buscar()
{
String sql ="select * from cliente where codigo="+"'"+codigo+"'";
Query qe=em1.createNativeQuery(sql);
List l1=qe.getResultList();
if (l1.size()>=1)
{
Object [] ar_objeto=(Object [])(l1.get(0));
String ls_nombre=ar_objeto[1].toString();
nombre=ls_nombre;
mensaje="";
}
else
{
mensaje="No se encontro el cliente";
}
}
}
*Crear la unidad de persistencia: click derecho sobre el proyecto/new persistence unit. Colocar el nombre de la unidad de persistencia, escoger el proveedor de persistencia, escoger el origen de datos
*Correr la aplicación: