📄 shoppingcartservlet.java
字号:
out.println("<TR>"); out.println("<TD></TD>"); out.println("<TD></TD>"); out.println("<TD><B>Total</B></TD>"); out.print("<TD><B>"); out.print(formatter.format(total)); out.println("</B></TD>"); out.println("<TD></TD>"); out.println("</TR>"); out.println("</TABLE>"); out.println("<BR><P ALIGN=Right>"); out.print("<FORM ACTION=\""); out.print(requestURL); out.println("\" METHOD=\"GET\">"); out.println("<INPUT TYPE=\"SUBMIT\" NAME=\"action\" VALUE=\"Purchase\">"); out.println("</FORM>"); out.println("</P>"); if((referer!=null)&&(referer.length()>0)) { out.print("<CENTER><H4><A HREF=\""); out.print(referer); out.print("?referer="); out.print(referer); out.println("\">Back</A></H4></CENTER>"); } out.println("</TD>"); out.println("</TR>"); out.println("</TABLE>"); out.println("</CENTER>"); out.println("</BODY>"); out.println("</HTML>"); out.close(); } protected void outputItem(ShoppingCartItem item ,PrintWriter out ,String act ,String referer) { out.print("<FORM ACTION=\""); out.print(act); out.println("\" METHOD=\"GET\">"); out.println("<TR>"); out.print("<TD>"); out.print(item.desc); out.println("</TD>"); out.print("<TD><INPUT TYPE=\"TEXT\" NAME=\"quantity\" VALUE=\""); out.print(item.quantity); out.println("\" SIZE=3></TD>"); out.print("<TD>"); out.print(formatter.format(item.price)); out.println("</TD>"); out.print("<TD>"); out.print(formatter.format(item.getTotal())); out.println("</TD>"); //Output the change form buttons and hidden fields out.println("<TD>"); out.print("<INPUT TYPE=\"HIDDEN\" NAME=\"item\" VALUE=\""); out.print(item.desc); out.println("\">"); out.print("<INPUT TYPE=\"HIDDEN\" NAME=\"price\" VALUE=\""); out.print(item.price); out.println("\">"); out.print("<INPUT TYPE=\"HIDDEN\" NAME=\"referer\" VALUE=\""); out.print(referer); out.println("\">"); out.println("<INPUT TYPE=\"SUBMIT\" NAME=\"action\" VALUE=\"Adjust\">"); out.println("<INPUT TYPE=\"SUBMIT\" NAME=\"action\" VALUE=\"Delete\">"); out.println("</TD>"); out.println("</TR>"); out.println("</FORM>"); } protected void outputConfirm(Hashtable items ,ShoppingCart cart ,HttpSession session ,PrintWriter out ,String requestURL ,String referer) { ShoppingCartItem item; ShoppingCartItem curItem; Enumeration curItems; Hashtable itemsToConfirm; float total=0; curItems = items.elements(); itemsToConfirm = new Hashtable(); session.setAttribute("shoppingcart.itemsToConfirm",itemsToConfirm); out.println("<HTML>"); out.println("<HEAD>"); out.println("<TITLE>"); out.println("Confirm Purchase"); out.println("</TITLE>"); out.println("</HEAD>"); out.println("<BODY TEXT=\"#000000\" BGCOLOR=\"#FFFFFF\""); out.println(" LINK=\"#FF0000\" VLINK=\"#800080\">"); out.println("<CENTER>"); out.println("<TABLE WIDTH=500 BORDER=0>"); out.println("<TR>"); out.println("<TD>"); out.println("<CENTER><H1>Confirmation Required</H1></CENTER>"); out.print("Please confirm your purchase of"); out.println(" the following items:<BR>"); out.print("<EM>Items that have changed are printed"); out.println(" in blue.</EM>"); out.println("<TABLE>"); out.println("<TR>"); out.println("<TH>Description</TH>"); out.println("<TH>Quantity</TH>"); out.println("<TH>Price</TH>"); out.println("<TH>Total</TH>"); out.println("</TR>"); while((curItems!=null)&&(curItems.hasMoreElements())) { curItem = (ShoppingCartItem) curItems.nextElement(); try { item = cart.addItem(curItem); curItem.price = item.price; curItem.quantity = item.quantity; itemsToConfirm.put(item.desc,item); } catch(Exception exp) { logger.log(exp); item = new ShoppingCartItem("err",0,0); } out.println("<TR>"); out.print("<TD>"); out.print(item.desc); out.println("</TD>"); out.print("<TD>"); if(item.quantity != curItem.quantity) out.print("<FONT COLOR=\"#0033FF\">"); out.print(item.quantity); if(item.quantity != curItem.quantity) out.print("</FONT>"); out.println("</TD>"); out.print("<TD>"); if(item.price != curItem.price) out.print("<FONT COLOR=\"#0033FF\">"); out.print(formatter.format(item.price)); if(item.price != curItem.price) out.print("</FONT>"); out.println("</TD>"); out.print("<TD>"); out.print(formatter.format(item.getTotal())); out.println("</TD>"); out.println("</TR>"); total += item.getTotal(); } out.println("<TR>"); out.println("<TD></TD>"); out.println("<TD></TD>"); out.println("<TD><B>Total</B></TD>"); out.print("<TD><B>"); out.print(formatter.format(total)); out.println("</B></TD>"); out.println("</TR>"); out.println("</TABLE>"); out.println("<BR>"); out.print("<FORM ACTION=\""); out.print(requestURL); out.println("\" METHOD=\"GET\">"); out.println("Enter your pass phrase to confirm."); out.println("<INPUT TYPE=\"TEXT\" "); out.println("NAME=\"confirmed\" SIZE=16>"); out.println("<INPUT TYPE=\"HIDDEN\" "); out.println("NAME=\"action\" VALUE=\"purchase\">"); out.println("<INPUT TYPE=\"SUBMIT\" "); out.println("NAME=\"submit\" VALUE=\"Confirm\">"); out.println("</FORM>"); if((referer!=null)&&(referer.length()>0)) { out.print("<CENTER><H4><A HREF=\""); out.print(referer); out.print("?referer="); out.print(referer); out.println("\">Back</A></H4></CENTER>"); } out.println("</TD>"); out.println("</TR>"); out.println("</TABLE>"); out.println("</CENTER>"); out.println("</BODY>"); out.println("</HTML>"); out.close(); } protected void doPurchase(Hashtable items ,ShoppingCart cart ,Hashtable oldCartItems ,String user ,PrintWriter out ,String requestURL ,String referer) { ShoppingCartItem item; ShoppingCartItem curItem; ShoppingCartItem cartItems[]=null; int i,max=0; Enumeration curItems; float total=0; boolean failed=false; boolean badCredit=false; curItems = items.elements(); try { while((curItems!=null)&&(curItems.hasMoreElements())) { curItem = (ShoppingCartItem) curItems.nextElement(); cart.addItem(curItem); } } catch(Exception exp) { failed = true; } if(!failed) { try { if(!cart.purchaseCart(user)) failed = true; } catch(BadCreditException exp) { failed = true; badCredit = true; } catch(Exception exp) { failed = true; } } if(failed) { if(badCredit) { outputErrorMessage(out ,"You do not have enough credit to make this purchase." ,referer); } else { outputErrorMessage(out ,"Server failure, unable to purchase items." ,referer); } return; } out.println("<HTML>"); out.println("<HEAD>"); out.println("<TITLE>"); out.println("Purchase Confirmed"); out.println("</TITLE>"); out.println("</HEAD>"); out.println("<BODY TEXT=\"#000000\" BGCOLOR=\"#FFFFFF\""); out.println(" LINK=\"#FF0000\" VLINK=\"#800080\">"); out.println("<CENTER>"); out.println("<TABLE WIDTH=500 BORDER=0>"); out.println("<TR>"); out.println("<TD>"); out.println("<CENTER><H1>Purchase Confirmed</H1></CENTER>"); out.print("Thank you for your purchase of the "); out.println("following items:<BR>"); out.println("<TABLE>"); out.println("<TR>"); out.println("<TH>Description</TH>"); out.println("<TH>Quantity</TH>"); out.println("<TH>Price</TH>"); out.println("<TH>Total</TH>"); out.println("</TR>"); try { cartItems = cart.getItems(); } catch(Exception exp) { } if(cartItems != null) max = cartItems.length; for(i=0;i<max;i++) { curItem = cartItems[i]; if(curItem.quantity > 0) { out.println("<TR>"); out.print("<TD>"); out.print(curItem.desc); out.println("</TD>"); out.print("<TD>"); out.print(curItem.quantity); out.println("</TD>"); out.print("<TD>"); out.print(formatter.format(curItem.price)); out.println("</TD>"); out.print("<TD>"); out.print(formatter.format(curItem.getTotal())); out.println("</TD>"); out.println("</TR>"); total += curItem.getTotal(); } } out.println("<TR>"); out.println("<TD></TD>"); out.println("<TD></TD>"); out.println("<TD><B>Total</B></TD>"); out.print("<TD><B>"); out.print(formatter.format(total)); out.println("</B></TD>"); out.println("</TR>"); out.println("</TABLE>"); if((referer!=null)&&(referer.length()>0)) { out.print("<CENTER><H4><A HREF=\""); out.print("index.jsp"); out.println("\">Back To Store Front</A></H4></CENTER>"); } out.println("</TD>"); out.println("</TR>"); out.println("</TABLE>"); out.println("</CENTER>"); out.println("</BODY>"); out.println("</HTML>"); out.close(); //reset the cart oldCartItems.clear(); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -