成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Struts2分頁實現源碼

開發 后端
本文主要講解了Struts2的分頁實現,在這里要重點理解get和set方法的使用。詳細情況下文

1.介紹

(1)Struts2相當于是servlet,和servelt不同的是當提交到struts.xml中之后,通過aciton標簽就可以直接調用想用的方法,減少了代碼量。

(2)在ActionSuport中set方法是注入,即是set方法是獲取jsp頁面中傳過來的值,get方法是是向jsp頁面發送值,值得一提的是有了get和set方法之后就取代了servlet中的

request.getParameter("");和重定向的操作。在這里要重點理解get和set方法的使用。

(3)在struts2分頁中set和set方法更能突出它的用法。

2.下面來看實例把!

(1)首先訪問這個頁面時就應該查找出nowPage為1信息,所以在action中要判斷nowPage是否為空。

在jsp頁面的分頁判斷可以寫為:

  1. <div>    
  2.                 <a href="${pageContext.request.contextPath}/findAllPro.action?nowPage=1">首頁</a>    
  3.                 <a href="${pageContext.request.contextPath}/findAllPro.action?nowPage=${nowPage-1<=1?1:nowPage-1}">上一頁</a>    
  4.                 <a href="${pageContext.request.contextPath}/findAllPro.action?nowPage=${nowPage+1>=page.countPage?page.countPage:nowPage+1}">下一頁</a>    
  5.                 <a href="${pageContext.request.contextPath}/findAllPro.action?nowPage=${page.countPage}">末頁</a>    
  6.             </div>   

當然可以在Page中封裝好nowPage的判斷,在這里主要介紹action。

 

當點擊下一頁的時候會連接到findAllPro.action這個struts.xml中的action,

 

struts.xml 文件為:

  1. <?xml version="1.0" encoding="GBK"?>    
  2. <!DOCTYPE struts PUBLIC    
  3.     "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"    
  4.     "http://struts.apache.org/dtds/struts-2.3.dtd">    
  5. <struts>    
  6.     <package name="pro" namespace="/" extends="struts-default">    
  7.         <action name="findAllPro" class="cn.csdn.hr.action.ProvinceAction" method="findAll">    
  8.             <result>./list.jsp</result>    
  9.         </action>    
  10.     </package>    
  11. </struts>   

從struts.xml中可以看出findAllPro連接到的是cn.csdn.hr.action.ProvinceAction下的findAll方法,我們去找ProvinceAction,為:

  1. // 分頁查詢    
  2. public String findAll() {    
  3.  
  4.     if ("".equals(nowPage) || nowPage == null) {    
  5.         this.nowPage = 1;    
  6.     }    
  7.     System.out.println(nowPage + "==============");    
  8.  
  9.     page = new PageWhere("Province", nowPage, "where 1<2");    
  10.     // page= page.getDatas();    
  11.     return SUCCESS;    
  12. }   

因為要返回到jsp頁面,所以要寫一個get方法來把page傳到jsp頁面中:

  1. // 得到page的值 ,并把得到的值放到page中,page可以獲取所有的東西    
  2. private PageWhere page;    
  3.  
  4. public PageWhere getPage() {    
  5.     return page;    
  6. }   

這樣就把當前頁的信息傳到了jsp中,但是在分頁的時候因為nowPage是jsp和struts2來回傳的值,并且是一個變量,所以設置一個屬性nowPage,生成get和set方法,來獲取nowPage和把修改的nowPage傳到jsp中,整個ProvinceAction頁面為:

  1. package cn.csdn.hr.action;    
  2.     
  3. import cn.csdn.hr.HibernateUtil.PageWhere;    
  4. import cn.csdn.hr.domain.Province;    
  5. import cn.csdn.hr.service.ProvinceService;    
  6. import cn.csdn.hr.service.ProvinceServiceImpl;    
  7.     
  8. import com.opensymphony.xwork2.ActionSupport;    
  9.     
  10. public class ProvinceAction extends ActionSupport {    
  11.     
  12.     /**    
  13.      * get方法是向jsp頁面中傳值 set方法向獲取jsp頁面的值    
  14.      */    
  15.     private static final long serialVersionUID = 1L;    
  16.     
  17.     private ProvinceService provinceService = new ProvinceServiceImpl();    
  18.     
  19.     private Integer id;    
  20.     private String name;    
  21.     
  22.     public ProvinceAction() {    
  23.         super();    
  24.     }    
  25.     
  26.     // 通過頁面注入進來的。id的名稱一定要和表單中 的一致    
  27.     public void setId(Integer id) {    
  28.         this.id = id;    
  29.     }    
  30.     
  31.     public void setName(String name) {    
  32.         this.name = name;    
  33.     }    
  34.     
  35.     // 接收傳過來的nowPage    
  36.     private Integer nowPage;    
  37.     
  38.     public void setNowPage(Integer nowPage) {    
  39.         this.nowPage = nowPage;    
  40.     }    
  41.     
  42.     public Integer getNowPage() {    
  43.         return nowPage;    
  44.     }    
  45.     
  46.     // 得到page的值 ,并把得到的值放到page中,page可以獲取所有的東西    
  47.     private PageWhere page;    
  48.     
  49.     public PageWhere getPage() {    
  50.         return page;    
  51.     }    
  52.     
  53.     // 分頁查詢    
  54.     public String findAll() {    
  55.     
  56.         if ("".equals(nowPage) || nowPage == null) {    
  57.             this.nowPage = 1;    
  58.         }    
  59.         System.out.println(nowPage + "==============");    
  60.     
  61.         page = new PageWhere("Province", nowPage, "where 1<2");    
  62.         // page= page.getDatas();    
  63.         return SUCCESS;    
  64.     }    
  65. }   

整個jsp頁面為:

  1. <body>    
  2.     <div align="center">    
  3.         <h3>    
  4.             省市操作    
  5.         </h3>    
  6.         <table border="1px" cellpadding="0px" cellspacing="0px" width="300px">    
  7.             <tr>    
  8.                 <th>    
  9.                     編號    
  10.                 </th>    
  11.                 <th>    
  12.                     省名    
  13.                 </th>    
  14.                 <th>    
  15.                     操作    
  16.                 </th>    
  17.             </tr>    
  18.             <tbody>    
  19.                 <c:forEach items="${page.datas}" var="entity">    
  20.                     <tr align="center">    
  21.                         <td>    
  22.                             ${entity.id}    
  23.                         </td>    
  24.                         <td>    
  25.                             ${entity.name}    
  26.                         </td>    
  27.                         <td>    
  28.                                 
  29.                             <a href="${pageContext.request.contextPath}/insert.jsp">添加</a>    
  30.                             <a href="${pageContext.request.contextPath}/delPro.action?id=${entity.id}">刪除</a>    
  31.                             <a href="${pageContext.request.contextPath}/updatePro.action?id=${entity.id}">編輯</a>    
  32.                         </td>    
  33.                     </tr>    
  34.                 </c:forEach>    
  35.             </tbody>    
  36.         </table>    
  37.         <br/>    
  38.         <div>    
  39.             <a href="${pageContext.request.contextPath}/findAllPro.action?nowPage=1">首頁</a>    
  40.             <a href="${pageContext.request.contextPath}/findAllPro.action?nowPage=${nowPage-1<=1?1:nowPage-1}">上一頁</a>    
  41.             <a href="${pageContext.request.contextPath}/findAllPro.action?nowPage=${nowPage+1>=page.countPage?page.countPage:nowPage+1}">下一頁</a>    
  42.             <a href="${pageContext.request.contextPath}/findAllPro.action?nowPage=${page.countPage}">末頁</a>    
  43.         </div>    
  44.     </div>    
  45. </body>   

以上數據和從hibernate配置的數據庫中讀取出來的,分頁學會了,這個就是小case了。主要看其中的注釋就ok了。但是在寫更新的時候需要注意:

更新需要在更新完之后要在內部跳轉到查詢的頁面,所以結果應寫為:

  1. <result type="chain">findAllPro</result> 

記住要寫type、類型。

原文鏈接:http://blog.csdn.net/hanxiaoshuang321123/article/details/7323116

【編輯推薦】

  1. Java***別數據生成文件思路和優化
  2. Java圖形界面開發:高級Swing容器(一)
  3. Java圖形用戶界面:高級組件綜合例子
  4. 親身體驗CORBA: 使用java和C++混合編程
  5. 在Java程序中調用Matlab函數
責任編輯:林師授 來源: hanxiaoshuang321123博客
相關推薦

2009-06-08 16:44:00

2009-07-03 09:35:57

Struts2 JSP

2011-05-03 09:40:58

iBatis

2010-09-30 13:37:34

DB2分頁

2012-08-30 09:48:02

Struts2Java

2009-07-29 09:54:34

struts2和str

2011-04-28 09:52:04

Struts2

2009-06-04 07:47:54

Struts 2權威指源碼

2009-06-25 15:11:28

Struts2教程Struts2程序

2009-02-04 10:51:07

2009-06-04 08:34:24

Struts2配置struts.xml

2009-06-25 15:59:21

Struts2教程攔截器

2013-05-28 11:29:19

struts2

2017-07-11 09:42:22

漏洞

2009-06-08 16:44:00

Struts2文件上傳

2009-06-25 16:04:30

2009-07-14 17:10:44

struts2webwork

2009-06-04 09:20:19

struts2 if標使用

2009-06-03 14:19:34

Struts2Guice

2013-07-18 15:09:27

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人在线观看网站 | 成人伊人 | 久久精品视频99 | 精品亚洲国产成av人片传媒 | 成人精品一区二区户外勾搭野战 | 国产97久久| 一区二区中文字幕 | 亚洲第一中文字幕 | 亚洲精品中文字幕中文字幕 | 2019精品手机国产品在线 | 欧美在线一区二区三区 | 欧美精品在线视频 | 久久久久九九九女人毛片 | 欧美视频一区二区三区 | 色五月激情五月 | 久久男人天堂 | 中文字幕亚洲欧美 | 日韩精品成人免费观看视频 | 亚洲高清免费观看 | 国产精品99久久久久久宅男 | 在线小视频 | 欧美日韩国产三级 | 中文字幕第九页 | 中文一区二区 | 国产久视频 | 超碰高清| 亚州午夜精品 | 亚洲精品在线免费观看视频 | 欧美日韩精品在线一区 | 求个av网址 | 欧美精品影院 | 二区三区在线观看 | 国产视频一区二区 | 波霸ol一区二区 | 91精品国产高清久久久久久久久 | 特级a欧美做爰片毛片 | 蜜桃官网 | 欧美精品一区二区三区四区五区 | 91视频一区二区三区 | 国产精品1| 男女羞羞视频在线看 |