struts+spring+hibernate的web应用【6】

第十七部分:Web 层代码量比较大,涉及的地方也比较多,考虑到文章过于庞大,所以分两篇写。


            我们还是先从主要的

action 开始吧。

                   在 com.game.products.web.actions 包中新建 ProductsAction ,这是一个 DispatchAction

代码如下:

package  com.game.products.web.actions;

 import  java.util.List;

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

 import  org.acegisecurity.AccessDeniedException;
 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  com.game.commons.Pager;
 import  com.game.commons.PagerService;
 import  com.game.products.model.Products;
 import  com.game.products.services.iface.ProductsService;
 import  com.game.products.web.forms.ProductsForm;


 public   class  ProductsAction  extends  DispatchAction   {
    
     private  ProductsService productsService;
     private  PagerService pagerService;
    
     /** */ /**  
     * 显示所有信息
      */ 
     public  ActionForward doGetProducts(
            ActionMapping mapping,
            ActionForm form,
            HttpServletRequest req,
            HttpServletResponse res)  {
        String flag = req.getParameter( " flag " );
        
         int  totalRows = productsService.getRows();
        String currentPage = req.getParameter( " currentPage " );
        String pagerMethod = req.getParameter( " pagerMethod " );
        
        Pager pager = pagerService.getPager(currentPage, pagerMethod, totalRows);
        
        List productsList = productsService.getProducts(pager.getPageSize(), pager.getStartRow());
        
        req.setAttribute( " productsList " , productsList);
        req.setAttribute( " PAGER " , pager);
        req.setAttribute( " flag " , flag);
        req.setAttribute( " totalRows " , String.valueOf(totalRows));
        
         return  mapping.findForward( " all " );
    } 
    
     /** */ /**  
     * 显示一条信息
      */ 
     public  ActionForward doGetProduct(
            ActionMapping mapping,
            ActionForm form,
            HttpServletRequest req,
            HttpServletResponse res)  {
        String flag = req.getParameter( " flag " );
        String gameId = req.getParameter( " gameId " );
        String fieldname = "" ;
        String value = "" ;
         if (flag.equals( " 2 " ))  {
            fieldname = (String)req.getParameter( " fieldname " );
            value = (String)req.getParameter( " value " );
            req.setAttribute( " fieldname " , fieldname);
            req.setAttribute( " value " , value);
        } 
        
        Products pd = productsService.getProduct(gameId);
        req.setAttribute( " pd " , pd);
        req.setAttribute( " flag " , flag);
         return  mapping.findForward( " one " );
    } 
    
     /** */ /**  
     * 添加信息页面
      */ 
     public  ActionForward doAddProductPage(
            ActionMapping mapping,
            ActionForm form,
            HttpServletRequest req,
            HttpServletResponse res)  {
        String flag = req.getParameter( " flag " );
        req.setAttribute( " flag " , flag);
        String fieldname = "" ;
        String value = "" ;
         if (flag.equals( " 2 " ))  {
            fieldname = (String)req.getParameter( " fieldname " );
            value = (String)req.getParameter( " value " );
            req.setAttribute( " fieldname " , fieldname);
            req.setAttribute( " value " , value);
        } 
        
        String maxid = productsService.getMaxID();
        req.setAttribute( " maxid " , maxid);
         return  mapping.findForward( " add " );
    } 
    
     /** */ /**  
     * 添加信息
      */ 
     public  ActionForward doAddProduct(
            ActionMapping mapping,
            ActionForm form,
            HttpServletRequest req,
            HttpServletResponse res)  {
        ProductsForm pf = (ProductsForm)form;
        String flag = pf.getFlag();
        req.setAttribute( " flag " , flag);
        String fieldname = "" ;
        String value = "" ;
         if (flag.equals( " 2 " ))  {
            fieldname = pf.getFieldname();
            value = pf.getValue();
            req.setAttribute( " fieldname " , fieldname);
            req.setAttribute( " value " , value);
        } 
        
        Products pd = new  Products();
        pd.setGameCapacity(pf.getGameCapacity());
        pd.setGameId(pf.getGameId());
        pd.setGameMedia(pf.getGameMedia());
        pd.setGameNameCn(pf.getGameNameCn());
        pd.setGameNameEn(pf.getGameNameEn());
        pd.setGameVersion(pf.getGameVersion());
        pd.setGameCopyright(pf.getGameCopyright());
        pd.setGameContent(pf.getGameContent());
         if (pf.getGamePrice().equals( "" ))  {
            pd.setGamePrice( null );
        } else  {
            pd.setGamePrice(pf.getGamePrice());
        } 
        
         int  sign = 1 ;
         try  {
            productsService.addProduct(pd);
            sign = 1 ;
        } catch (Exception e)  {
            sign = 2 ;
        } 
        
         if (sign == 1 )  {
             return  mapping.findForward( " success " );
        } else  {
             return  mapping.findForward( " failure " );
        } 
    } 
    
     /** */ /**  
     * 修改信息
      */ 
     public  ActionForward doUpdateProduct(
            ActionMapping mapping,
            ActionForm form,
            HttpServletRequest req,
            HttpServletResponse res)  {
        ProductsForm pf = (ProductsForm)form;
        String gameId = pf.getGameId();
        
        String flag = pf.getFlag();
        req.setAttribute( " flag " , flag);
        String fieldname = "" ;
        String value = "" ;
         if (flag.equals( " 2 " ))  {
            fieldname = pf.getFieldname();
            value = pf.getValue();
            req.setAttribute( " fieldname " , fieldname);
            req.setAttribute( " value " , value);
        } 
        
        Products pd = productsService.getProduct(gameId);
        pd.setGameCapacity(pf.getGameCapacity());
        pd.setGameId(pf.getGameId());
        pd.setGameMedia(pf.getGameMedia());
        pd.setGameNameCn(pf.getGameNameCn());
        pd.setGameNameEn(pf.getGameNameEn());
        pd.setGameVersion(pf.getGameVersion());
        pd.setGameCopyright(pf.getGameCopyright());
        pd.setGameContent(pf.getGameContent());
         if (pf.getGamePrice().equals( "" ))  {
            pd.setGamePrice( null );
        } else  {
            pd.setGamePrice(pf.getGamePrice());
        } 
        
         int  sign = 1 ;
         try  {
            productsService.updateProductd(pd);
            sign = 1 ;
        } catch (Exception e)  {
            sign = 2 ;
        } 
        
         if (sign == 1 )  {
             return  mapping.findForward( " success " );
        } else  {
             return  mapping.findForward( " failure " );
        } 
    } 
    
     /** */ /**  
     * 删除信息
      */ 
     public  ActionForward doDeleteProduct(
            ActionMapping mapping,
            ActionForm form,
            HttpServletRequest req,
            HttpServletResponse res)  {
        String flag = req.getParameter( " flag " );
        req.setAttribute( " flag " , flag);
        String fieldname = "" ;
        String value = "" ;
         if (flag.equals( " 2 " ))  {
            fieldname = (String)req.getParameter( " fieldname " );
            value = (String)req.getParameter( " value " );
            req.setAttribute( " fieldname " , fieldname);
            req.setAttribute( " value " , value);
        } 
        
        String gameId = req.getParameter( " gameId " );
        
        Products pd = productsService.getProduct(gameId);
         int  sign = 1 ;
         try  {
            productsService.deleteProduct(pd);
            sign = 1 ;
        } catch (Exception e)  {
            sign = 2 ;
        } 
        
         if (sign == 1 )  {
             return  mapping.findForward( " success " );
        } else  {
             return  mapping.findForward( " failure " );
        } 
    } 
    
     /** */ /**  
     * 返回信息
      */ 
     public  ActionForward doReturnProduct(
            ActionMapping mapping,
            ActionForm form,
            HttpServletRequest req,
            HttpServletResponse res)  {
        String flag = req.getParameter( " flag " );
        req.setAttribute( " flag " , flag);
        String fieldname = "" ;
        String value = "" ;
         if (flag.equals( " 1 " ))  {
             int  totalRows = productsService.getRows();
            String currentPage = req.getParameter( " currentPage " );
            String pagerMethod = req.getParameter( " pagerMethod " );
            
            Pager pager = pagerService.getPager(currentPage, pagerMethod, totalRows);
            
            List productsList = productsService.getProducts(pager.getPageSize(), pager.getStartRow());
            
            req.setAttribute( " productsList " , productsList);
            req.setAttribute( " PAGER " , pager);
            req.setAttribute( " flag " , flag);
            req.setAttribute( " totalRows " , String.valueOf(totalRows));
        } else   if (flag.equals( " 2 " ))  {
            fieldname = (String)req.getParameter( " fieldname " );
            value = (String)req.getParameter( " value " );
             int  totalRows = productsService.getRows(fieldname,value);
            String currentPage = req.getParameter( " currentPage " );
            String pagerMethod = req.getParameter( " pagerMethod " );
            
            Pager pager = pagerService.getPager(currentPage, pagerMethod, totalRows);

            req.setAttribute( " fieldname " , fieldname);
            req.setAttribute( " value " , value);
            
            List productsList = productsService.queryProducts(fieldname, value,pager.getPageSize(), pager.getStartRow());
            
            req.setAttribute( " productsList " , productsList);
            req.setAttribute( " PAGER " , pager);
            req.setAttribute( " totalRows " , String.valueOf(totalRows));
        } 
        
         return  mapping.findForward( " all " );
        
    } 
    
     /** */ /**  
     * 查询信息
      */ 
     public  ActionForward doQueryProduct(
            ActionMapping mapping,
            ActionForm form,
            HttpServletRequest req,
            HttpServletResponse res)  {
        String flag = req.getParameter( " flag " );
        req.setAttribute( " flag " , flag);
        String fieldname = "" ;
        String value = "" ;
        fieldname = (String)req.getParameter( " fieldname " );
        value = (String)req.getParameter( " value " );
        
         int  totalRows = productsService.getRows(fieldname,value);
        String currentPage = req.getParameter( " currentPage " );
        String pagerMethod = req.getParameter( " pagerMethod " );
        
        Pager pager = pagerService.getPager(currentPage, pagerMethod, totalRows);

        req.setAttribute( " fieldname " , fieldname);
        req.setAttribute( " value " , value);
        
        List productsList = productsService.queryProducts(fieldname, value,pager.getPageSize(), pager.getStartRow());
        
        req.setAttribute( " productsList " , productsList);
        req.setAttribute( " PAGER " , pager);
        req.setAttribute( " totalRows " , String.valueOf(totalRows));
        
         return  mapping.findForward( " all " );
        
    } 
 
      public  ProductsService getProductsService()   {
         return  productsService;
    } 
 
      public   void  setProductsService(ProductsService productsService)   {
         this .productsService  =  productsService;
    } 
 
      public  PagerService getPagerService()   {
         return  pagerService;
    } 
 
      public   void  setPagerService(PagerService pagerService)   {
         this .pagerService  =  pagerService;
    } 
    
} 

 

 

第十八部分:在 com.game.products.web.forms 包中新建 ProductsForm ,他继承了 ValidatorForm 。代码如下:

 

 package  com.game.products.web.forms;

 import  javax.servlet.http.HttpServletRequest;

 import  org.apache.struts.action.ActionMapping;
 import  org.apache.struts.validator.ValidatorForm;

 public   class  ProductsForm  extends  ValidatorForm   {
     //     Fields  
      private  String gameId; // 编号 
      private  String gameNameCn; // 中文名称 
      private  String gameNameEn; // 英文名称 
      private  String gameCapacity; // 碟数 
      private  String gameVersion; // 版本 
      private  String gameMedia; // 介质 
      private  String gameCopyright; // 版权 
      private  String gamePrice; // 价格 
      private  String gameContent; // 攻略 
     
     private  String flag;
     private  String fieldname;
     private  String value;
    
     //     Constructors 
       public  ProductsForm()  {
        gameId = null ;
        gameNameCn = null ;
        gameNameEn = null ;
        gameCapacity = null ;
        gameVersion = null ;
        gameMedia = null ;
        gameCopyright = null ;
        gamePrice = null ;
        gameContent = null ;
        
        flag = null ;
        fieldname = null ;
        value = null ;
    } 
    
     //  reset 
       public   void  reset(ActionMapping mapping, HttpServletRequest request)   {
        gameId = null ;
        gameNameCn = null ;
        gameNameEn = null ;
        gameCapacity = null ;
        gameVersion = null ;
        gameMedia = null ;
        gameCopyright = null ;
        gamePrice = null ;
        gameContent = null ;
        
        flag = null ;
        fieldname = null ;
        value = null ;
    } 
    
     //     Property accessors 
       public  String getGameCapacity()   {
         return  gameCapacity;
    } 
 
      public   void  setGameCapacity(String gameCapacity)   {
         this .gameCapacity  =  gameCapacity;
    } 
 
      public  String getGameId()   {
         return  gameId;
    } 
 
      public   void  setGameId(String gameId)   {
         this .gameId  =  gameId;
    } 
 
      public  String getGameNameCn()   {
         return  gameNameCn;
    } 
 
      public   void  setGameNameCn(String gameNameCn)   {
         this .gameNameCn  =  gameNameCn;
    } 
 
      public  String getGameNameEn()   {
         return  gameNameEn;
    } 
 
      public   void  setGameNameEn(String gameNameEn)   {
         this .gameNameEn  =  gameNameEn;
    } 
 
      public  String getGameVersion()   {
         return  gameVersion;
    } 
 
      public   void  setGameVersion(String gameVersion)   {
         this .gameVersion  =  gameVersion;
    } 
 
      public  String getGameMedia()   {
         return  gameMedia;
    } 
 
      public   void  setGameMedia(String gameMedia)   {
         this .gameMedia  =  gameMedia;
    } 
 
      public  String getFieldname()   {
         return  fieldname;
    } 
 
      public   void  setFieldname(String fieldname)   {
         this .fieldname  =  fieldname;
    } 
 
      public  String getFlag()   {
         return  flag;
    } 
 
      public   void  setFlag(String flag)   {
         this .flag  =  flag;
    } 
 
      public  String getValue()   {
         return  value;
    } 
 
      public   void  setValue(String value)   {
         this .value  =  value;
    } 
 
      public  String getGameCopyright()   {
         return  gameCopyright;
    } 
 
      public   void  setGameCopyright(String gameCopyright)   {
         this .gameCopyright  =  gameCopyright;
    } 
 
      public  String getGameContent()   {
         return  gameContent;
    } 
 
      public   void  setGameContent(String gameContent)   {
         this .gameContent  =  gameContent;
    } 
 
      public  String getGamePrice()   {
         return  gamePrice;
    } 
 
      public   void  setGamePrice(String gamePrice)   {
         this .gamePrice  =  gamePrice;
    } 
 
} 
 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值