???????????随着时间推移,Servlet+JSP+JavaBean模型开始暴露出它的缺点,霸主地位摇摇可危。
这时候这种乱局面就由Structs? 1一统江湖了
它是按照MVC模式开发轻量级的web应用框架,因此那时候的江湖,如果有谁不知道structs? 1,那就是不符合武林人士的资格,也导致面试官开始超级喜欢问Structs 1,如果求职者不能在简历上写熟练使用Structs的话,就好像给自己判了死缓一样。
然而一个江湖接替一个江湖,使用Action实现类就必须继承Strucs 1中的Action? 降低了灵活性
1.一个应用中只能使用单一的ActionServlet,可能导致配置冲突
2.具有页面传值的javabean又得继承Strucs 1? FormBean,其本质还就是一个javaBean用起来还是麻烦
这些问题出现后,江湖中就出现了很多挑战其地位的武林高手,什么Strucs 2(web? work),Tapestry,SpringMVC等。虽然有那么多武林高手,但是名师出高徒,其中最优秀的还是Strucs 1的关门弟子Strucs 2.既继承了老师的衣钵,又改进了许多
?
之所以说又称Strucs 2为webwork,是因为当Strucs 1高手陷入困境时,Strucs 1开发团队迎来了webwork,WebWork设计思想先进,但是呢,名气却不高,相当于初出茅庐的小子,于是呢两个框架准备合并,就得到了今天的Strucs 2.
我们看下Strucs 2到底是什么?
所以这就是Strucs 2是一种基于MVC轻量级的Web应用框架。
?
?
?
?
1.控制器--FilterDispatcher
??? 用户请求先到达前端控制器FilterDispatcher,根据用户提交URL和structs.xml中的配置,选择合适的动作(Action),让Acrtion来处理用户请求。FilterDispatcher其实就是一个过滤器,Strucs 里面已经配置好的类,只需要在web.xml里面配置一下即可。
2.动作--Action
?? Ation负责把用户中请求的参数组装成合适的数据模型,并调用相应的业务逻辑进行真正的功能处理,然后再获取下一个视图展示所需要的数据。
3.视图--Result?
?? 视图作用于Action动作中获取的数据展示给用户
?
接下来我们的代码生涯使用Strucs 框架时,也要按照这个流程去走才能顺畅,对于博大高深的SSH三大框架,就要先打散,再整合。
Strucs 了解到此为止,到现在应该大致知道Strucs 是什么,能干什么,粗略了解里面有什么了吧。那么接下来如何使用Strucs 2来开发基于MVC的Web应用就让我们拭目以待。
Structs1时代 goto Strucs 2时代武林霸主变更记
原文:http://429899791.iteye.com/blog/2251154