yunye 的 JavaBlog

          @see codemouse

          統計

          留言簿(1)

          閱讀排行榜

          評論排行榜

          Struts使用Tiles輔助開發(轉載)

          Jplateau(原作) 來自:http://www.javaresearch.org/article/8134.htm

          對于在頁面的布局管理以及可重用方面,Tiles做得很優秀,使我們在開發過程中思路非常流暢,特別是在用struts開發項目過程中,如果使用tiels來輔助開發,往往能帶到事半功倍的效果。

          如果要看Tiles的詳細文檔,請訪問http://www.lifl.fr/~dumoulin/tiles/

          在此我想從使用方式上說一下自己的經驗:

          往往我們的一個項目中,大部分的頁面的布局都是一樣的,這其中如果我們把一樣風格的頁面歸為一類的話,這樣的分類就不會很多了。(不同的項目這樣的分類多少為有區別,要看頁面風格規劃的是否高效)

          假設我們提出一類頁面(如產品管理)的風格,布局如下:
           
          那么我們可以在tiles-defs.xml中定義這樣一個總的類型,如下:

          tiles-defs.xml  放在/yourwebapp/WEB-INF/下

          1. <?xml version="1.0" encoding="ISO-8859-1" ?>
          2.  <!DOCTYPE tiles-definitions PUBLIC
          3.        "-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN"
          4. "http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd">
          5. <tiles-definitions>
          6.       <!―布局類型一 -->
          7.          <definition name="mainLayout" path="/homepage.jsp">
          8.          <put name="top"  value="/header.jsp" />
          9.          <put name="menu"    value="/menu.jsp"/>
          10.          <put name="main" value="/main.jsp" />
          11.          <put name="footer" value="/footer.jsp" />   
          12.   </definition>
          13.        ……
          14.        <!―布局類型二 -->
          15.   <definition>
          16.               ……
          17.   </definition>
          18.        ……
          19. </tiles-definitions>


          以上定義了一種布局類型,假設命名為A布局,下面要列舉兩個屬于該類型風格的頁面的布局方法添加產品頁面,最終我們要關心的時addProducts.jsp這個頁面,但是我們如何使用A布局的布局風格呢?

          如下:

          ……接上tiles-defs.xml……

          1.       <!―布局類型A布局一 -->
          2.          <definition name="mainLayout" path="/homepage.jsp">
          3.          <put name="top"  value="/header.jsp" />
          4.          <put name="menu"    value="/menu.jsp"/>
          5.          <put name="main" value="/main.jsp" />
          6.          <put name="footer" value="/footer.jsp" />   
          7. </definition>
          8. <!―布局類型A布局“子類1:添加商品”一 -->
          9. <definition name=”mainLayout_products_add” extends=” mainLayout”>
          10.      <put name=”main” value=”/addProducts.jsp”/>
          11.      <!―相當于把布局A中main的內容換成我們需要的,其他保留 -->
          12. </definition>
          13. <!―布局類型A布局“子類2:查詢商品”一 -->
          14. <definition name=”mainLayout_products_search” extends=” mainLayout”>
          15.      <put name=”main” value=”/searchProducts.jsp”/>
          16. <!―相當于把布局A中main的內容換成我們需要的,其他保留 -->
          17. </definition>
          18. ……
          19. ……


          以上只是以一種布局類型來說明,其他的布局類型(如:布局B,布局C。。。。。)都用相通的方法擴展,沒有什么難的地方。

          下面簡要說一些tiles在struts-config.xml中的配置,在struts1.1種tiles是利用struts的擴展機制來完成裝載的,代碼很簡單如下:

          1. //struts-config.xml
          2.   ……
          3.   <plug-in className="org.apache.struts.tiles.TilesPlugin" >
          4.     <set-property property="definitions-config" 
          5.                         value="/WEB-INF/tiles-defs.xml" />
          6.   </plug-in>


          如果你些多個tiles配置文件,那么用“,”號隔開。
          下面在舉一個使用tiles以后action mapping 的寫法

          如我們要進行添加商品的請求,在添加頁面里要先進行商品類型的裝載:

          addProductAction.do――〉ProductAction――〉addProducts.jsp
          ProductAction完成商品類型的集合返回client端
          1. //Struts-config.xml
          2. …………
          3.        <action path=”/ addProductAction”
          4.                      type=”com.***. ProductAction”>
          5.         <!―成功以后返回布局A子類1-- >
          6.        <forward name=”” path=” mainLayout_products_add”>
          7. </action>
          8. …………


          好了,以上對一個操作的流程采用tiles以后的寫法進行了簡要的說明,具體Tiles的文檔請參看上面給出的連接。

          Struts發布包里也有tilse的文檔和例子。

          posted on 2008-03-18 14:37 yunye 閱讀(236) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 正镶白旗| 通江县| 洱源县| 武义县| 安多县| 翁源县| 东丰县| 长宁县| 南和县| 襄樊市| 阜南县| 黄山市| 五常市| 衢州市| 保德县| 苏州市| 宁武县| 沈丘县| 当涂县| 淮安市| 军事| 宣威市| 望城县| 鸡东县| 芷江| 新化县| 浙江省| 津市市| 司法| 武宁县| 海晏县| 普陀区| 冷水江市| 那曲县| 定兴县| 五原县| 宜黄县| 伊川县| 阳新县| 揭东县| 泸溪县|