http://www.lifl.fr/~dumoulin/tiles/在此我想从" />

Struts使用Tiles辅助开发

系统 1806 0
对于在页面的布局管理以及可重用方面,Tiles做得很优秀,使我们在开发过程中思路非常流畅,特别是在用struts开发项目过程中,如果使用tiels来辅助开发,往往能带到事半功倍的效果。

如果要看Tiles的详细文档,请访问
<script src="http://www.pcdog.com/tech/js/Ads.js" type="text/javascript"></script>
http://www.lifl.fr/~dumoulin/tiles/

在此我想从使用方式上说一下自己的经验:

往往我们的一个项目中,大部分的页面的布局都是一样的,这其中如果我们把一样风格的页面归为一类的话,这样的分类就不会很多了。(不同的项目这样的分类多少为有区别,要看页面风格规划的是否高效)

假设我们提出一类页面(如产品管理)的风格,布局如下:

那么我们可以在tiles-defs.xml中定义这样一个总的类型,如下:

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

  1. <?xmlversion="1.0"encoding="ISO-8859-1"?>
  2. <!DOCTYPEtiles-definitionsPUBLIC
  3. "-//ApacheSoftwareFoundation//DTDTilesConfiguration1.1//EN"
  4. "http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd">
  5. <tiles-definitions>
  6. <!—布局类型一-->
  7. <definitionname="mainLayout"path="/homepage.jsp">
  8. <putname="top"value="/header.jsp"/>
  9. <putname="menu"value="/menu.jsp"/>
  10. <putname="main"value="/main.jsp"/>
  11. <putname="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. <definitionname="mainLayout"path="/homepage.jsp">
  3. <putname="top"value="/header.jsp"/>
  4. <putname="menu"value="/menu.jsp"/>
  5. <putname="main"value="/main.jsp"/>
  6. <putname="footer"value="/footer.jsp"/>
  7. </definition>
  8. <!—布局类型A布局“子类1:添加商品”一-->
  9. <definitionname=”mainLayout_products_add” extends =”mainLayout”>
  10. <putname=”main”value=”/addProducts.jsp”/>
  11. <!—相当于把布局A中main的内容换成我们需要的,其他保留-->
  12. </definition>
  13. <!—布局类型A布局“子类2:查询商品”一-->
  14. <definitionname=”mainLayout_products_search” extends =”mainLayout”>
  15. <putname=”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-inclassName="org.apache.struts.tiles.TilesPlugin">
  4. <set-propertyproperty="definitions-config"
  5. value="/WEB-INF/tiles-defs.xml"/>
  6. </plug-in>


如果你些多个tiles配置文件,那么用“,”号隔开。
下面在举一个使用tiles以后actionmapping的写法

如我们要进行添加商品的请求,在添加页面里要先进行商品类型的装载:

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


好了,以上对一个操作的流程采用tiles以后的写法进行了简要的说明,具体Tiles的文档请参看上面给出的连接。

Struts发布包里也有tilse的文档和例子。

Struts使用Tiles辅助开发


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论