⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shopcartaction.java

📁 基于JSP+Struts的在线购物商城
💻 JAVA
字号:
package eshop.struts;

import java.util.ArrayList;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

public class ShopCartAction extends Action
{
    public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
    {
        ShopCartActionForm shopCarActionForm = (ShopCartActionForm) form;
        ShoppingCart cart = (ShoppingCart) request.getSession().getAttribute("cart");
		if( cart==null ) {
			return mapping.findForward("login");//尚未登录
		}
		ArrayList goodList = cart.getGoodList();
        if (request.getParameter("action") != null) 
        {

            String action = request.getParameter("action");
            String goodid = request.getParameter("goodid"); //获得需要减少的书编号
			if( action.equals("add") ) {
				cart.addGood(goodid);
			}
            else if (action.equals("del")) //删除某种商品
            {
				
                for (int i = 0; i < goodList.size(); i++)
                {
                    GoodBean gbean = (GoodBean) goodList.get(i);
                    if ((gbean.getGoodId().toString()).equals(goodid))
                    {
                        goodList.remove(i);
						cart.setTotalAmount( cart.getTotalAmount()-1 );
                        break;
                    }
                }
            }

            else if (action.equals("countChange"))
            {
                for (int i = 0; i < goodList.size(); i++)
                {
                	GoodBean gbean = (GoodBean) goodList.get(i);
                    if ((gbean.getGoodId().toString()).equals(goodid))
                    {
						int count = Integer.parseInt( request.getParameter("count") );//可能会有异常
						int originalCount = gbean.getCount();
						if( count>0 ) {
							gbean.setCount( count );
							cart.setTotalAmount( cart.getTotalAmount()-originalCount+count );
						}
						else {
							goodList.remove(i);//彻底删除某种商品
							cart.setTotalAmount( cart.getTotalAmount()-originalCount );
						}
						break;
                    }
                }
            }
            else if (action.equals("delAll"))
            {
				cart.reset();
            }
        }
        request.getSession().setAttribute("cart", cart);
        return mapping.findForward("shopcar");

    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -