`
haiwoo
  • 浏览: 11992 次
  • 来自: ...
社区版块
存档分类
最新评论

Struts2/webwork与tapestry的区别(一)

阅读更多

用了webwork1.5年时间,也用了tapestry1年的时间,总结了一下他们之间的一些优点和缺点

一、从设计角度上说

     tapestry是优秀的面向组件开发框架

     webwork只是一个优秀的面向标签封装的开发框架

     但虽然说是tapestry是面向组件开发的框架,当一个公司开发一套系统的时候,讲究的时间效率,上层管理才不管你是开发组件还是标签,他要的是的最快开发速度,前提是不出现bug,而往往一个功能最快的开发速度是使用通用的标签与简单的编码,而编写组件,说白了就是自定义标签,只不过这个标签的功能很大,封装了很多公用的业务代码,而这些东西不仅仅要有良好的设计方案以及明确的详细需求,还要熟练一个框架的基本原理加上编写组件消耗的开发时间,这样对很多人以及很多公司来说都是致命的,我也相信不会有多少公司会有专门的开发通用组件成员存在,何况tapestry也不是该公司自己研发的

   但是面向组件的tapestry用了通用的组件对开发速度的提升不是webwork可替代的,并且已经明确了的组件又减少的bug的出现机率

   以上可以说tapestry相对webwork更适应那些开发自身产品的公司

二、从资源管理角度上说

   tapestry是单列模式的管理资源,是线程不安全的

   webwork是线程安全

   webwork对servlet的请求是通过比较上层的context进行读取的,这点tapestry是不可比拟的,这样tapestry在写业务方法的时候自然相对webwork而言方法一般都回很长,而且tapestry的action跳转控制里面是不应该定义内部成员,这样也会给开发带来一点的方便,而且阅读也不是很好,而且不熟悉tapestry的人进行开发就会出现一些意想不到的bug以及性能问题,我们公司就出现了这些问题,还好他们刚出现问题就聘请到了我=======满足一下自己的虚荣心

三、从读取数据角度上说

    tapestry与webwork都是支持ognl标签

    因此很多人说tapestry的jwcid标签简单而webwork的ww或者struts2的s 标签复杂难懂,其实他们是一样,不要因为改了名字就不认人了

四、从view层编写上说

   tapestry是采用人们熟悉简单的html格式

   webwork是采用java同志们熟悉的jsp格式

   或许是html格式的原因的,很多人都说tapestry支持html,方便美工合作。其实我个人理解这是不对的,tapestry只是采用这种编写方法而已,最终还是跟jsp一样还是要生成servlet,但tapestry更优秀点地说他直接生成asci码的html,也正是这种asci码也造就了tapestry在某些方面就会出现一定的性能问题,如,当界面上需要显示大量的数据,如下拉框里放入俩百个对象,那么tapestry生成的asci码就会非常之大使得单个文件的html超过了80k=======80k都是个人感觉这个应该在http传输协议应该有影响,也希望会的人指教一下。所以过大的文件在b/s模式中是很影响效率的

  然而webwork采用的是jsp,或许在很多人看来不方便工作合作,我倒是纳闷了,难道开发b/s模式采用java语言的人都不熟练jsp吗

 

分享到:
评论

相关推荐

    Comparing Web Frameworks; Struts, Spring MVC, WebWork, Tapestry & JSF.pdf

    此软件介绍webwork and struts and jsf的区别

    Struts2教程/在JAVA EE中作为MVC的优秀框架

    Tapestry也是apache公司推出的,但个人认为是极其难使的,而且版本之间的差别较大,文档也不是很多,使用较费劲,而对于Struts而言,相信不少人都清楚,毕竟Struts已经成功的成为了MVC框架的一个标准,如果不去搞...

    java初学者的比较好的学习路线(转)

    第一阶段: 您将学习 JAVA 编程的基础部分,即 J2SE 部分,共分 2 门课程 第二阶段: 您将学习 JAVA WEB 技术,共分 7 门课程 第三阶段: 您将学习 J2EE 技术 ...流行Web框架简介 Struts / WebWork / Tapestry

    struts2权威指南全版(分10部分)

    Struts 2与Struts 1相比,确实有很多革命性的改进,但它并不是新发布的新框架,而是在另一个赫赫有名的框架:WebWork基础上发展起来的。从某种程度上来讲,Strut2没有继承Struts 1的血统,而是继承了WebWork的血统。...

    struts2讲义.doc

    值得庆幸的是Struts的开发人员也意识到了Struts的这些缺点,因此在2006年Struts和另外一个Web项目开发框架WebWork进行了合并,形成了新的Web项目开发框架Struts2。这个所谓的Struts2其实就是WebWork的一个新版本。一...

    Wicket开发指南(简体中文)

    Wicket是什么 简单点说,它是一个基于JAVA的WEB开发框架,与Struts ,WebWork,Tapestry 相类似。其特点在于对Html 和代码进行了有效的分离(有利于程序员和美工 作),基于规则的配置 减少了XML等配置文件的使用 ...

    wicket 学习文档

    简单点说,它是一个基于Java 的Web 开发框架,与Struts,WebWork, Tapestry 相类似。其特点在于对Html 和代码进行了有效的分离(有利于程序员和美工的合 作),基于规则的配置(减少了XML 等配置文件的使用),学习...

    Wicket开发指南-简体版

    Wicket是一个基于Java的Web开发框架,与Struts,WebWork,Tapestry类似。其特点在于对Html和代码进行了有效的分离(有利于程序员和美工的合作),基于规则的配置(减少了XML等配置文件的使用),学习曲线较低(开发...

    SSM(Spring+SpringMVC+MyBatis)框架集由Spring、MyBatis两个开源框架整合而成(Spring

    它可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与Swing等桌面应用程序AP组合。因此,Spring不仅仅能应用于J2EE应用程序之中,也可以应用于桌面应用程序以及小...

    Wicket开发指南

    简单点说,它就是一个基于Java 的Web 开发框架,与Struts, WebWork,Tapestry相类似。其特点在于对Html 和代码进行了有效的分离(有利于程序员 和美工的合作),基于规则的配置(减少了XML 等配置文件的使用)...

    spring介绍及应用

    Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。因此, Spring不仅仅能应用于J2EE应用程序之中,也可以应用于桌面应用程序...

    spring环绕通知图示

    Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。因此, Spring不仅仅能应用于J2EE应用程序之中,也可以应用于桌面应用程序...

    spring后置通知分析图示

    Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。因此, Spring不仅仅能应用于J2EE应用程序之中,也可以应用于桌面应用程序...

    spring前置通知分析图示

    Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。因此, Spring不仅仅能应用于J2EE应用程序之中,也可以应用于桌面应用程序...

    spring第四个版本分析图示

    Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。因此, Spring不仅仅能应用于J2EE应用程序之中,也可以应用于桌面应用程序...

    面向切面编程图示.png

    Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。因此, Spring不仅仅能应用于J2EE应用程序之中,也可以应用于桌面应用程序...

    spring图解.zip

    Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。因此, Spring不仅仅能应用于J2EE应用程序之中,也可以应用于桌面应用程序...

    spring-5.2.6.7z

    Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。因此, Spring不仅仅能应用于JEE应用程序之中,也可以应用于桌面应用程序以及...

    JSF2.0快速入门的基本教程.ppt

    JSF将是J2EE5.0中所包含的web开发框架,这应该是第一个成为jcp标准,并且随j2eesdk一起发布的web框架,可以看出sun对它的期望很高。JSF最大的竞争对手是tapestry,是apache的产品,但是apache又弄出了个myfaces,是...

    2024 最新 毕业设计 高校学生选课系统项目源码.rar

    Spring是一个轻量级的Java EE框架,由Rod Johnson创建。它旨在简化企业级应用开发,通过提供一系列...它支持与多种Web框架(如Struts、Webwork、Tapestry等)的组合使用,也可以应用于桌面应用程序和小应用程序。 5.

Global site tag (gtag.js) - Google Analytics