struts1与struts2
它们都是mvc框架,struts2与struts1没有关系,struts2是struts1开发团队在webwork发展起来的。
struts2作为后来的框架,借鉴struts1的经验,完善其中很多不足,肯定要比struts1开发效率高,功能更强大,设计更优雅。
我用了一阵,感觉真的很好使。
首先,它 的核心控制器是一个filter<filter具有servlet的一切功能,因为filter拦截请求,dofilter有response和request,而servlet的service也是这两个参数,所以,servlet的代码完成移到filter里,只要filter不放行,就是servlet功能,并且多一个拦截功能。
struts2的action可以不依赖servlet api和struts2 api,不过,在我看来,纯属忽悠,如果不依赖这些东西,其功能很弱,干部了什么事情,要干点weby应用,最终还得用到那个api.
struts.xml很方便分模块,它用include个模块的xml文件,摈弃xml支持分包的设计的思想,每个模块用包分区开发,不同的模块用不同的url地址来访问,即不同的namespace,这个思想和好。struts1没有这个东西。
struts2支持多种类型的视图,struts1只有用actionforward返回一个jsp.
struts2提供标签比struts1更方便;html:select和html:optionCollection必须套在html:form,因为html:select从actionformbean对象取数据进行显示,而struts2没有formbean这个说法,s:select标签从ognl取属性迭代显示。