viewcategoryaction.java

来自「这是一个bookstore的应用」· Java 代码 · 共 54 行

JAVA
54
字号
package com.netshop.web.struts.action;

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 com.netshop.domain.model.*;

import org.springframework.beans.support.PagedListHolder;
import com.netshop.domain.service.*;
import com.netshop.domain.service.impl.*;

public class ViewCategoryAction extends BaseAction {

    public ActionForward execute(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {
        String categoryId = request.getParameter("categoryId");
        ProductManager manager = ManagerFactory.createProductManager();
        if (categoryId != null) {
            Category category = manager.getCategory(categoryId);
            PagedListHolder productList = new PagedListHolder(manager
                    .getProductListByCategory(categoryId));
            productList.setPageSize(4);
            request.getSession().setAttribute("ViewProductAction_category",
                    category);
            request.getSession().setAttribute("ViewProductAction_productList",
                    productList);
            request.setAttribute("category", category);
            request.setAttribute("productList", productList);
        } else {
            Category category = (Category) request.getSession().getAttribute(
                    "ViewProductAction_category");
            PagedListHolder productList = (PagedListHolder) request
                    .getSession().getAttribute("ViewProductAction_productList");
            if (category == null || productList == null) {
                throw new IllegalStateException(
                        "Cannot find pre-loaded category and product list");
            }
            String page = request.getParameter("page");
            if ("next".equals(page)) {
                productList.nextPage();
            } else if ("previous".equals(page)) {
                productList.previousPage();
            }
            request.setAttribute("category", category);
            request.setAttribute("productList", productList);
        }
        return mapping.findForward("success");
    }

}

⌨️ 快捷键说明

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