论坛首页 Java企业应用论坛

Struts2 or Tapestry哪个更好一点

浏览 14038 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (14)
作者 正文
   发表时间:2008-10-18  
有人使用过Tapestry吗?这东西的性能怎么样?跟Struts2相比,在开发效率与运行效率上哪个好一点。。请大虾们指教。
   发表时间:2008-10-18  
开发效率是struts2不能比的。 性能觉得比struts2也好。 刚用T5开发了个项目, 感觉非常好  用jetty启动tapestry 修改类时不用重启server。 service class除外。 
0 请登录后投票
   发表时间:2008-10-20  
建议楼主使用最大众化的框架,这样有问题也方便问,方便找资料。Tapestry也许不错,但不可否认的是,经过这么多年的发展,使用群体依然少,资料依然很少。所以建议慎用。
0 请登录后投票
   发表时间:2008-10-20  
dengyin2000 写道
开发效率是struts2不能比的。 性能觉得比struts2也好。 刚用T5开发了个项目, 感觉非常好  用jetty启动tapestry 修改类时不用重启server。 service class除外。 


哪里得出的结论?

Tapestry是我用过的对View层最不友好的Web框架,实在没看出开发效率高在哪里,说到性能,恐怕还没有人能说哪个Web框架对其他的框架有足够的性能优势吧。
0 请登录后投票
   发表时间:2008-10-20  
downpour 写道
dengyin2000 写道
开发效率是struts2不能比的。 性能觉得比struts2也好。 刚用T5开发了个项目, 感觉非常好  用jetty启动tapestry 修改类时不用重启server。 service class除外。 


哪里得出的结论?

Tapestry是我用过的对View层最不友好的Web框架,实在没看出开发效率高在哪里,说到性能,恐怕还没有人能说哪个Web框架对其他的框架有足够的性能优势吧。



你用的是T几? T4?

T4性能是有问题。T5的性能有大幅的提高 T5中有live classloader.所以你修改page对象(增加方法 删除方法 增加成员变量 修改成员变量)时不需要重启server。 这个就是效率 仅web层让你感觉就像写脚本一样。 而且是基于组件的  非常nature。

你为什么说T是对view层对不友好? 在tapestry中的view是对开发人员和美工友好的。 struts的jsp tag能做到吗?

0 请登录后投票
   发表时间:2008-10-20  
dengyin2000 写道


你用的是T几? T4?

T4性能是有问题。T5的性能有大幅的提高 T5中有live classloader.所以你修改page对象(增加方法 删除方法 增加成员变量 修改成员变量)时不需要重启server。 这个就是效率 仅web层让你感觉就像写脚本一样。 而且是基于组件的  非常nature。

你为什么说T是对view层对不友好? 在tapestry中的view是对开发人员和美工友好的。 struts的jsp tag能做到吗?



Action代码的修改不需要重启Server这点特性,我不认为这个是Web层开发的主要矛盾,所以就凭这点说开发效率的提升,我想是无法服众的。请就以下几点评价一下Tapestry:

1. 页面与Action之间的互相传递参数

2. 如何对Action代码进行单元测试

3. 如何有效规划好你项目中所有的URL,从而使得你的URL更加友好,与你的Action对应也更加直接

至于说到Tapestry中的View是对开发人员和美工友好,这一点是更加无法赞同了。那些span中带有的自定义属性在我看来与JSP Tag没什么很大的差别,甚至还比JSP Tag更加难以理解。在页面逻辑比较复杂时,这些满屏的span简直就是噩梦。在JSP Tag标准化(使用JSTL)和模板技术(Freemarker和Velocity)非常成熟的今天,Tapestry那所谓的不使用JSP Tag的谎话早就应该被揭穿了。
1 请登录后投票
   发表时间:2008-10-20  
downpour 写道
dengyin2000 写道


你用的是T几? T4?

T4性能是有问题。T5的性能有大幅的提高 T5中有live classloader.所以你修改page对象(增加方法 删除方法 增加成员变量 修改成员变量)时不需要重启server。 这个就是效率 仅web层让你感觉就像写脚本一样。 而且是基于组件的  非常nature。

你为什么说T是对view层对不友好? 在tapestry中的view是对开发人员和美工友好的。 struts的jsp tag能做到吗?



Action代码的修改不需要重启Server这点特性,我不认为这个是Web层开发的主要矛盾,所以就凭这点说开发效率的提升,我想是无法服众的。请就以下几点评价一下Tapestry:

1. 页面与Action之间的互相传递参数

2. 如何对Action代码进行单元测试

3. 如何有效规划好你项目中所有的URL,从而使得你的URL更加友好,与你的Action对应也更加直接

至于说到Tapestry中的View是对开发人员和美工友好,这一点是更加无法赞同了。那些span中带有的自定义属性在我看来与JSP Tag没什么很大的差别,甚至还比JSP Tag更加难以理解。在页面逻辑比较复杂时,这些满屏的span简直就是噩梦。在JSP Tag标准化(使用JSTL)和模板技术(Freemarker和Velocity)非常成熟的今天,Tapestry那所谓的不使用JSP Tag的谎话早就应该被揭穿了。


满屏的span? 我看你是不是搞错了。  随便举个例子 

<input t:type="textfield" type="text" t:value="name"/>  你说的满屏的span是什么意思?


action传值 可以注入一个page class然后调用set方法就好了。 或者这样 http://www.xxx.com/posts/1000  在你的pageclass定义 onactivate(long id) 和 onPassivate方法就是了。

T5的URL天然是rest样式的

T5的page class是pojo 这个跟struts2没有区别。 而且struts2还要implement一大坨的接口。

另外T5对单元测试也有支持  http://tapestry.apache.org/tapestry5/guide/unit-testing-pages.html

这里回答你的页面传参数的问题  http://tapestry.apache.org/tapestry5/guide/pagenav.html



至于重启server会不会带来效率的提高  我想大家都有大家的看法。 我觉得是方便太多了 如果不是为什么现在这么多人追捧解释型的语言做表示层? 我也在看Groovy。
0 请登录后投票
   发表时间:2008-10-20  
页面上,t5 不如wicket简洁,现在的t5 的语法和jsp taglib有什么差别,同样对页面设计人员来说不友好,t4 的页面比较简洁,但要借助page配置页面组件。
0 请登录后投票
   发表时间:2008-10-20  
不谈框架的好坏了,没多大意义,自己看着办。

反正对于我这种吃过T3的亏,觉得T5也不怎么样的人对于Tapestry实在是不能接受的。
0 请登录后投票
   发表时间:2008-10-20  
hantsy 写道
页面上,t5 不如wicket简洁,现在的t5 的语法和jsp taglib有什么差别,同样对页面设计人员来说不友好,t4 的页面比较简洁,但要借助page配置页面组件。


t5的语法跟facelet很像,其实facelet是参照tapestry。 t5也可以把组件定义到page class中。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics