Sei sulla pagina 1di 8

Carrito de Compras con Cookies

Introducción
En esta demostración, que trata de una aplicación web (Carrito de compras), utilizando
cookies, en Java y usando la plataforma NetBeans IDE 8.2. Estas cookies actúan como
pequeños trozos de información textual que el servidor puede enviar al cliente y que este no
modifica y reenvía al servidor cuando vuelve a visitar el mismo sitio.

Hasta este momento, usted ya es capaz de crear una aplicación del tipo Web, dentro de
NetBeans, por lo que el nombre de su proyecto, se llamara CarroCompras + Su No Carnet.

Ahora vamos al Desarrollo de la aplicación.

1.- Creación del formulario en HTML.


Primero haremos lo más fácil. El diseño en HTML para seleccionar los libros. Para hacer esto
le damos clic derecho en WebPages, New y seleccionamos HTML.
Esto se desarrollará si en NetBeans, no tenemos ningún archivo HTML.
1.1.-Codigo del index.html
El Diseño del index.html, debe dar como resultado lo siguiente:

El código del index.html es el siguiente:


2.-Creacion del Servlet Libros
Creamos primero el paquete compra, dentro de este paquete estará 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>
}

Potrebbero piacerti anche