Cet article partage le code spécifique du module de commande du livre de livres en ligne Java pour votre référence. Le contenu spécifique est le suivant
1.Mes commande --- Vérifier
Requête PageBean <ord> par requête utilisateur
<div> <span style = "margin-left: 150px; margin-droit: 280px;"> Informations du produit </span> <span style = "margin-left: 40px; margin-droite: 38px;"> montant </span> <span style = "margin-left: 50px; margin-right: 40px;"> statut d'ordre </panneuse> <spanche = "margin-droite: 40px;" 50px; marge-droite: 50px; "> opération </span> </div> <table align =" Center "CellPadding =" 0 "Cellpacing =" 0 "> <c: foreach items =" $ {pb.beanlist} "var =" Order "> <tr> <Td> Numéro de commande: <a href =" <c: url Value = '/ Ordersew } '/> "> $ {order.oid} </a> </td> <td> Temps de commande: $ {order.ordertime} </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> <td> </td> <td> </td> <tr style = "padding-top: 10px; padding-bottom: 10px;"> <td colspan = "2"> <c: foreach items = "$ {order.orderItemlist}" var = "orderItem"> <a href = "<c: url Value = '/ BookServlet? Method = Load & Bid = $ {orderItem.book.bid}' /> "> <img src =" <C: URL Value = '/ $ {orderItem.book.image_b}' /> "/> </a> </ c: foreach> </ td> <td> <pander> ¥ $ {order.total} <C: Choisissez> <C: When test = "$ {Order.Status Eq 1}"> (attendre le paiement) </c: When> <C: When test = "$ {Order.Status Eq 2}"> (Préparez pour l'expédition) </ C: When> <C: When Test = "$ {Order.status Eq 3}"> (attendre la confirmation) </ C: quand> test = "$ {order.status eq 4}"> (transaction réussie) </ c: quand> <c: when test = "$ {order.status eq 5}"> (annuler) </c: when> </ c: choisis> </Derger> <td> <a href = "<c: url value = '/ ordersert? } '/> "> Voir </a> <br/> <c: if test =" $ {order.status eq 1} "> <a href =" <c: url value =' / orderservlet? Method = PaycePre & oid = $ {order.oid} '/> "> Pay </a> <br/> <a href =" <c: url Value = '/ OrderServlet? Method = Load & oid = $ {order.oid} & btn = annuler' /> "> annuler </a> <br/> </ c: if> <c: if test =" $ {order.status eq 3} "> <a href =" <c: url value = '/ orderservet? } & btn = Confirmer '/> "> Confirmer le reçu </a> <br/> </c: if> </td> </tr> </c: foreach> </ table> </div> 2. Génération d'ordre dans le module d'ordre
Orderservlet
public String createOrder (httpServletRequest req, httpservletResponse resp) lève ServletException, ioException {/ * * 1. Obtenez l'ID de toutes les entrées de panier et requête * / string cartitemids = req.getParameter ("carditemids"); List <citem> carcitemList = CartemService.LoadCartitems (Cartitemides); if (cartetemList.size () == 0) {req.setAttribute ("code", "erreur"); req.setAttribute ("msg", "Vous n'avez pas sélectionné le livre que vous souhaitez acheter, vous ne pouvez pas passer de commande!"); return "f: /jsps/msg.jsp"; } / * * 2. Créer Ordre * / Order Ordre = New Order (); order.setoid (Commonutils.uuid ()); // Définit la clé principale Ordre.SetOrderTime (String.format ("% tf% <tt", new ())); // définir l'Ordre.SetStatus (1); // définir le statut, 1 signifie non-paid order.setAddress (req.getParamètre ("Address")); // définir le propriétaire de l'adresse de la livraison = (Utilisateur) req.getSession (). GetAttribute ("SessionUser"); Order.Setowner (propriétaire); // Définit le propriétaire de l'Ordre BigDecimal Total = new BigDecimal ("0"); pour (Carditem Cartitem: Carditemlist) {total = total.add (new BigDecimal (Cartem.getSubTotal () + "")); } order.setTotal (Total.DoubleValue ()); // Définit le total / * * 3. Créer List <C.C.C.C.C.Commantem> * Un cartitem correspond à un ordonnance * / list <C.C.C.C.C.C.C.C.CommanteMList = new ArrayList <CormItem> (); pour (Carditem Cartem: CarcitemList) {ordonnancemOrdItem = new OrderItem (); orderItem.SetOrderItemid (Commonutils.uuid ()); // Définit la clé primaire ORDERITEM.Setquantity (carcitem.getquantity ()); orderItem.SetSubTotal (carditem.getSubTotal ()); ORDERITEM.SETBOOK (Cartem.getBook ()); ORDERITEM.SetOrder (Order); orditemList.add (OrderItem); } order.setOrderItemList (ORDERITEMLIST); / * * 4. Appelez le service pour terminer l'ajout * / OrderService.CreateOrder (Order); // Supprimer le cadrochage de panier CartitemService.BatchDelete (Cartitemides); / * * 5. Enregistrez l'ordre et transmettez-le à Ordersucc.jsp * / req.setAttribute ("Order", Ordre); retourner "f: /jsps/order/ordersucc.jsp";}OrderDao
public void add (Order Order) lève sqlexception {/ * * 1. INSERT ORDER * / String sql = "Insérer dans les valeurs T_Order (?,?,?,?,?,?)"; Objet [] params = {order.getoid (), order.getOrderTime (), order.getTotal (), order.getStatus (), order.getAddress (), order.getowner (). GetUid ()}; qr.update (SQL, params); / * * 2. Loop via toutes les entrées de l'ordre, de sorte que chaque entrée génère un objet [] * plusieurs entrées correspondent à l'objet [] [] * Exécuter le traitement par lots pour compléter la saisie d'ordre d'insertion * / sql = "Insérer dans les valeurs T_OrderItem (? ,? ,? ,? ,? ,? ,?)"; int len = order.getOrderItemList (). size (); Objet [] [] objs = nouvel objet [len] []; pour (int i = 0; i <len; i ++) {ordonnance item = order.getOrderItemList (). get (i); objs [i] = nouvel objet [] {item.getOrderIteMID (), item.getquantity (), item.getSubTotal (), item.getBook (). getbid (), item.getbook (). getBName (), item.getBook (). GetCurrPrice (), item.getBook (). getImage_b (), Order.getoid ()}; } qr.batch (sql, objs);}Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.