关于struts2

08-12-19 oojdon
表现层框架我最熟悉的是struts1,而且是和jdon结合使用的,最近在看struts2,不明白为什么它要引入package,extends,namespace,这三个元素真的很有用吗?很有用为什么其他的表现层框架没有类似的做法。

BTW:向大家推荐一个表现层框架 :vraptor,个人非常喜欢,使用picocontainer自动装配,使用起来有seam的感觉.

xmuzyu
2008-12-19 23:23
struts2我没有去学,因为以前学过webwork,也看了xwork的代码,我说下我基于webwork的理解。

那个package主要就是为了让我们可以模块化配置action,package可以基础父package,这样在子package里就有可以使用父package的配置,至于那个namespace,主要是在访问的url上作用。要想访问指定命名空间里的action,在url上要加上相应的namespace.

oojdon
2008-12-20 09:16
对于模块化,strut1的做法就已经够用了,比如jivejdon的模块化Action:

struts-config-admin.xml

struts-config-forum.xml

struts-config-message.xml

struts-config-security.xml

总觉得extends,nmaespace是额外增加了复杂性,真的很有必要吗?

不过表现层框架也引入拦截器我个人非常喜欢!!

[该贴被oojdon于2008-12-20 09:23修改过]

xmuzyu
2008-12-20 10:11
呵呵,拦截器确实我也喜欢,还有表达式语言ONGL的引入,使得表单和模型之间赋值绑定以及类型转换都比较好。有点不好的地方就是每次请求都产生一个Action对象,不过目前JVM优化了GC算法,这样还减轻性能损失,不过每次请求一个Action的好处就是Action可以不考虑线程安全性,struts1的Action是单例的,所以还要考虑线程安全性呵呵,总之有得必有失吧。

oojdon
2008-12-20 11:55
>>struts1的Action是单例的,所以还要考虑线程安全性

听说struts1的action还是池化了的,注意把它搞成无状态就行了,线程这个东西我不太敢碰,需要时间,现在我确定我玩不转!

[该贴被oojdon于2008-12-20 13:13修改过]

猜你喜欢
2Go 1 2 下一页