import java.io.*; import java.util.*; import javax.servlet.*; import javax.servlet.http.*; public class Cart2 extends HttpServlet { List products; Map> carts; Integer idSeed; public void init() throws ServletException { products = new ArrayList(); products.add( "milk" ); products.add( "bread" ); products.add( "book" ); products.add( "cd" ); carts = new HashMap>(); idSeed = 1; } public void doGet( HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException { String id = null; Cookie[] cookies = request.getCookies(); if( cookies != null ) { for( int i=0 ; i < cookies.length ; ++i ) if( cookies[i].getName().equals("sid") ) { id = cookies[i].getValue(); break; } } Integer sid; List cart; if( id == null ) { sid = idSeed++; cart = new ArrayList(); carts.put(sid, cart); Cookie cookie = new Cookie( "sid", sid.toString() ); response.addCookie( cookie ); } else { sid = new Integer(id); cart = carts.get(sid); } String item = request.getParameter("add"); if( item != null ) cart.add(item); item = request.getParameter("del"); if( item != null ) cart.remove(item); // generate response response.setContentType( "text/html" ); PrintWriter out = response.getWriter(); out.print( "" ); out.println( "Shopping Cart"); out.println( "" ); out.println( ""); out.println( ""); out.println( ""); out.println( "" ); out.println( "" ); out.println( "" ); out.println( "" ); out.println( "" ); out.println( "
Products
Cart
" ); for( String p : products ) out.print( p + "
" ); out.println( "
" ); for( String p : products ) out.print( "=>
" ); out.println( "
" ); for( String i : cart ) out.print( ""+i+"
" ); out.println( "
" ); out.println( "" ); } public void doPost( HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException { doGet( request, response ); } }