Sie sind auf Seite 1von 5

Examen de Web

Nombre: Samantha Molina

Vista:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ page import="ec.edu.epn.model.*" %>
<jsp:include page="/templates/header.jsp"></jsp:include>
<%
Producto productoModificar = (Producto)
request.getAttribute("producto");
%>

<section class="container">
<div class="row">
<div class="col-lg-9">
<form class="form-horizontal" id="loginForm"
method="post"
action="$
{pageContext.request.contextPath}/producto/actualizar">
<fieldset>
<legend>Actualizacin de
Producto</legend>
<div class="form-group">
<label for="inputName" class="collg-2 control-label">Id</label>
<div class="col-lg-10">
<input type="text"
class="form-control" id="id"
name="id"
placeholder="Nombre" value="<%=productoModificar.getId()%>">
</div>
</div>
<div class="form-group">
<label for="inputName" class="collg-2 control-label">Nombre</label>
<div class="col-lg-10">
<input type="text"
class="form-control" id="nombre"
name="nombre"
placeholder="Nombre" value="<%=productoModificar.getNombre()%>">
</div>
</div>
<div class="form-group">
<label for="inputEmail" class="collg-2 control-label">Valor</label>
<div class="col-lg-10">
<input type="text"
class="form-control" id="valor" name="valor"
placeholder="Valor"
required value="<%=productoModificar.getValor()%>">
</div>
</div>
<div class="form-group">
<label for="inputPassword"
class="col-lg-2 control-label">Stock</label>
<div class="col-lg-10">
<input class="form-control"
id="stock"
name="stck"
placeholder="Stock" required value="<%=productoModificar.getStock()
%>">
</div>
</div>
<div>
<button type="submit" class="btn
btn-primary"
data-container="body" datatoggle="popover" data-placement="top">Actualizar</button>
</div>
</fieldset>
</form>
</div>

</div>
</section>
<jsp:include page="/templates/footer.jsp"></jsp:include>

Controlador
package ec.edu.epn.controller.actualizar;
import
import
import
import
import
import

java.io.IOException;
javax.servlet.ServletException;
javax.servlet.annotation.WebServlet;
javax.servlet.http.HttpServlet;
javax.servlet.http.HttpServletRequest;
javax.servlet.http.HttpServletResponse;

import ec.edu.epn.model.Producto;
import ec.edu.epn.model.service.ServiceProducto;
/**
* Servlet implementation class ActualizarProducto
*/
@WebServlet("/producto/actualizar")
public class ActualizarProducto extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public ActualizarProducto() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request,
HttpServletResponse
*
response)
*/
protected void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
ServiceProducto sp = new ServiceProducto();
int idProducto = 0;
String id = request.getParameter("id");
if (id != null)
idProducto = Integer.parseInt(id);
if (idProducto != 0){
System.out.println(idProducto);
Producto producto = sp.buscarUsuario(idProducto);
request.setAttribute("producto", producto);

getServletConfig().getServletContext().getRequestDispatcher("/vista/ac
tualizar.jsp").forward(request,
response);
}
}
/**
* @see HttpServlet#doPost(HttpServletRequest request,
HttpServletResponse
*
response)
*/
protected void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
try {
String id = (String) request.getParameter("id");
String nombre = (String)
request.getParameter("nombre");
String valor = (String)
request.getParameter("valor");
String stock = (String)
request.getParameter("stock");
int idProducto = Integer.parseInt(id);
int stockProducto = Integer.parseInt(stock);
java.math.BigDecimal valorProducto = new
java.math.BigDecimal(valor);
Producto productoModificador = new Producto();
productoModificador.setId(idProducto);
productoModificador.setNombre(nombre);
productoModificador.setStock(stockProducto);
productoModificador.setValor(valorProducto);
ServiceProducto sp = new ServiceProducto();
sp.actualizarProducto(productoModificador);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Servicio

package ec.edu.epn.model.service;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import ec.edu.epn.model.Producto;
public class ServiceProducto {
public Producto buscarUsuario(int id) {

EntityManagerFactory emf =
Persistence.createEntityManagerFactory("ExamenWEB-JPA");
EntityManager em = emf.createEntityManager();
em.getTransaction().begin();
Producto p = em.find(Producto.class, id);
em.getTransaction().commit();
em.close();
return p;
}
public void actualizarProducto(Producto productoModificador) {
EntityManagerFactory emf =
Persistence.createEntityManagerFactory("ExamenWEB-JPA");
EntityManager em = emf.createEntityManager();
Producto producto = em.getReference(Producto.class,
productoModificador.getId());
producto.setNombre(productoModificador.getNombre());
producto.setStock(productoModificador.getStock());
producto.setValor(productoModificador.getValor());
em.getTransaction().begin();
em.persist(producto);
em.getTransaction().commit();
em.close();
}

Persistencia
<?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="ExamenWEB-JPA" transactiontype="RESOURCE_LOCAL">
<class>ec.edu.epn.model.Producto</class>
<properties>
<property name="javax.persistence.jdbc.url"
value="jdbc:mysql://192.168.216.131/ExamenWEB"/>
<property name="javax.persistence.jdbc.user"
value="bases"/>
<property name="javax.persistence.jdbc.password"
value="bases"/>
<property name="javax.persistence.jdbc.driver"
value="com.mysql.jdbc.Driver"/>
</properties>
</persistence-unit>
</persistence>

Das könnte Ihnen auch gefallen