SSH(struts+spring+hibernate)迅速开发--第九章 下订单(2)

 

OrderForm.java

/*

 * Generated by MyEclipse Struts

 * Template path: templates/java/JavaClass.vtl

 */

package cn.com.book.demo.struts.form;

 

import javax.servlet.http.HttpServletRequest;

import org.apache.struts.action.ActionErrors;

import org.apache.struts.action.ActionMapping;

import org.apache.struts.validator.ValidatorForm;

 

/**

 * MyEclipse Struts

 * Creation date: 12-19-2007

 *

 * XDoclet definition:

 * @struts.form name="orderForm"

 */

public class OrderForm extends ValidatorForm {

       private String sendAddress;

 

       private String receiveName;

 

       private String receivePhone;

      

       /*

        * Generated Methods

        */

 

       public String getReceiveName() {

              return receiveName;

       }

 

       public void setReceiveName(String receiveName) {

              this.receiveName = receiveName;

       }

 

       public String getReceivePhone() {

              return receivePhone;

       }

 

       public void setReceivePhone(String receivePhone) {

              this.receivePhone = receivePhone;

       }

 

       public String getSendAddress() {

              return sendAddress;

       }

 

       public void setSendAddress(String sendAddress) {

              this.sendAddress = sendAddress;

       }

 

       /**

        * Method validate

        * @param mapping

        * @param request

        * @return ActionErrors

        */

       public ActionErrors validate(ActionMapping mapping,

                     HttpServletRequest request) {

              // TODO Auto-generated method stub

              return null;

       }

 

       /**

        * Method reset

        * @param mapping

        * @param request

        */

       public void reset(ActionMapping mapping, HttpServletRequest request) {

              // TODO Auto-generated method stub

       }

}

 

OrderAction.java

/**

 *

 */

package cn.com.book.demo.struts.action;

 

import java.util.ArrayList;

import java.util.List;

 

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

 

import org.apache.struts.action.ActionForm;

import org.apache.struts.action.ActionForward;

import org.apache.struts.action.ActionMapping;

import org.apache.struts.actions.DispatchAction;

 

import cn.com.book.demo.services.OrderServices;

import cn.com.book.demo.services.ShopServices;

import cn.com.book.demo.services.ShoppingCar;

import cn.com.book.demo.services.UserOrder;

import cn.com.book.demo.services.UserOrderItem;

import cn.com.book.demo.services.impl.OrderServicesImpl;

import cn.com.book.demo.services.impl.ShopServicesImpl;

import cn.com.book.demo.struts.form.OrderForm;

import cn.com.book.demo.struts.util.Constants;

 

/**

 * @author Noble.Yang

 *

 */

public class OrderAction extends DispatchAction {

       private OrderServices orderServices = null;

 

       private ShopServices shopServices = null;

 

       public void setOrderServices(OrderServices orderServices) {

              this.orderServices = orderServices;

       }

 

       public void setShopServices(ShopServices shopServices) {

              this.shopServices = shopServices;

       }

      

       public ActionForward toInitPage(ActionMapping mapping, ActionForm form,

                     HttpServletRequest request, HttpServletResponse response) {

              return mapping.findForward("init");

       }

 

       public ActionForward toSubmitOrder(ActionMapping mapping, ActionForm form,

                     HttpServletRequest request, HttpServletResponse response) {

              String path = "error";

              this.initServices();

              OrderForm orderForm = (OrderForm) form;

 

              ShoppingCar shopCar = (ShoppingCar) request.getSession().getAttribute(

                            Constants.SHOPPING_KEY);

              if (shopCar != null) {

                     UserOrder userOrder = new UserOrder();

                     userOrder.setReceiveName(orderForm.getReceiveName());

                     userOrder.setSendAddress(orderForm.getSendAddress());

                     userOrder.setReceivePhone(orderForm.getReceivePhone());

 

                     int[] shops = shopCar.getShops();

                     if (shops != null) {

                            List items = new ArrayList();

                            UserOrderItem item = null;

                            for (int i = 0; i < shops.length; i++) {

                                   item = new UserOrderItem();

                                   item.setShopID(shops[i]);

                                   item.setSinglePrice(this.shopServices

                                                 .findShopById(shops[i]).getPrice());

                                   item.setAmount(shops[i + 1]);

 

                                   items.add(item);

                                   i++;

                            }

                            userOrder.setOrderItems(items);

                     }

 

                     String userName = (String) request.getSession().getAttribute(

                                   Constants.USER_NAME);

                     boolean bool = this.orderServices.submitOrder(userOrder, userName);

                     if (bool) {

                            request.getSession().removeAttribute(Constants.SHOPPING_KEY);

                            path = "success";

                     }

              }

              return mapping.findForward(path);

       }

 

       private void initServices() {

              if (this.orderServices == null) {

                     this.orderServices = new OrderServicesImpl();

              }

              if (this.shopServices == null) {

                     this.shopServices = new ShopServicesImpl();

              }

       }

}

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值