Introducción
Este es un tutorial de una aplicacion web (Carrito de compras) usando cookies, en java y usando la plataforma Netbeans IDE 7.0.1. Estos cookies actuan como pequeños trozos de informacion textual que el servidor puede enviar al cliente y que este no modifica y reenvia al servidor cuando vuelve a visitar el mismo sitio.
Ahora vamos al Desarrollo xD!
1.- Creacion del formulario en html
Primero haremos lo mas facil!!. El diseño en html para seleccionar los libros. Para hacer esto le damos click derecho en WebPages, New y seleccionamos HTML.
1.1.-Codigo del index.html
El Diseño del index.html, quedara asi.
El codigo del index.html es el siguiente.
<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<h1 align ="center">Seleccione el Libro de su preferencia </h1><br>
<form name="form" action="Libros" method="POST">
<h3 align ="center">Seleccione el libro de preferencia: <select name="listar">
<option>Java</option>
<option>C</option>
<option>C++</option>
<option>VB</option>
<option>RubY</option>
<option>Phyton</option>
</select> <input type="submit" value="enviar" /> </h3>
</form>
</body>
</html>
2.-Creacion del Servlet Libros
Creamos primero el paquete compra, dentro de este paquete estara el Servlet Libros
Ahora Creamos el Servlet Libros
2.1.-Codigo del Servlet Libros
package compra; import java.io.*; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.*; import javax.servlet.http.Cookie; /** * * @author JulioCsaR */ public class Libros extends HttpServlet { private final Map libros = new HashMap(); public void init() { libros.put("Java", "67.00"); libros.put("C", "56.00"); libros.put("C++", "63.00"); libros.put("VB", "52.00"); libros.put("Ruby", "48.50"); libros.put("Phyton","46.00"); } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String lenguaje=request.getParameter("listar"); String precio=libros.get(lenguaje).toString(); //Creamos el Cookie, este recibe dos parametros: Nombre y valor Cookie cookie=new Cookie(lenguaje,precio); //Añadir el cookie a la respuesta response.addCookie(cookie); response.setContentType("text/html"); PrintWriter out=response.getWriter(); out.println( "<?xml version = \"1.0\"?>" ); out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD" + "XHTML 1.0 Strict//EN\" \"http://www.w3.org" + "/TR/xhtml1/DTD/xhtml1-strict.dtd\">"); out.println("<html xmlns = \"http://www.w3.org/1999/xhtml\">"); out.println( "<head><title>LIBRERIA ATLANTIDA</title></head>" ); out.println( "<body>" ); out.println( "<h1 >Bienvenidos Libreria Atlantida! Usted selecciono " +lenguaje + "</h1>" ); out.println("<p><a href=\"index.html\">\"Clickee aqui para seguir comprando</a></p>"); out.println("<p><a href=\"Libros\">\"Clickee aqui para ver el resumen de su compra</a>"); out.println( "</body>" ); out.println( "</html>" ); out.close(); } @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Cookie cookies[] = request.getCookies(); Double sum = 0.0; response.setContentType( "text/html" ); PrintWriter out = response.getWriter(); out.println( "<?xml version = \"1.0\"?>" ); out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD" +"XHTML 1.0 Strict//EN\" \"http://www.w3.org" + "/TR/xhtml1/DTD/xhtml1-strict.dtd\">"); out.println("<html xmlns = \"http://www.w3.org/1999/xhtml\">"); out.println( "<head>"); out.println( "<title>CARRITO DE COMPRAS</title>" ); out.println( "</head>" ); out.println( "<body>" ); if ( cookies != null && cookies.length != 0 ) { out.println( "<h1 align=center>Compra Total</h1>" ); out.println( "<p>" ); out.println("<table width=298 border=1 cellpadding=6 align=center>"); out.println("<tr>"); out.println("<td width=208 align=center><strong><b>Titulo del Libro</b></strong></td>"); out.println("<td width=74 align=center><strong><b>Precio</b></strong></td>"); out.println("</tr>"); for ( int i = 0; i < cookies.length; i++ ) { out.println("<tr>"); out.println("<td>" + cookies[i].getName() + " Como programar.: </td>"); out.println("<td>"+ cookies[i].getValue() + "</td>"); out.println("</tr>"); sum = sum + Double.parseDouble(cookies[i].getValue()); } out.println("</table>"); out.println("<br>"); out.println("<h2 align=center><b>Monto Total S/.: "+ sum+ "</b></h2>"); } else { out.println("<H1>No hay recomendaciones </H1>"); out.println("<p>Ud no selecciono ningun Libro</p>"); } out.println("</body>"); out.println("</html>"); out.close(); } /** * Returns a short description of the servlet. * @return a String containing servlet description */ @Override public String getServletInfo() { return "Short description"; }// </editor-fold> }
3 comentarios:
amigo no me dice nada cuando ingreso el libro, esto es lo que medice:
"Servlet Libros at /Carrito1" no me muestra "usted elijio java"
NO funciona, sale error de instaciamiento en el servlet Libro
Si Funciona !! Gracias Me Sirvio mucho.
Publicar un comentario