2006年2月18日
开学第一周在匆匆忙忙的脚步中过去了!下了一周的雨也终于停了,第一个周末,也没什么大事情,就拿struts来开开涮吧!
说干就干!因为自己以前已经看过一点struts,并且做过一个小例子(记得以前好像有个wizard,就是教你一步步用struts)。但还没有深入它的代码,对它的流程当时了解过,不过现在忘了,唉,岁月不饶人,不服老不行,看着记性!
先把struts做个Introduction吧,正好在介绍的同时也给自己一个整理的机会,看了一天了,整理一下思路吧!
首先讲到struts,就不能不提Model 2,讲到Model 2就不能不提到Model 1(),其实,这三者都离不开一个东西,就是java中web application里面的最基本也是最重要的东西,servlet,不错,我认为它是个基础(个人看法:),servlet是个好东西,sun公司认为有两种类型的web application:1、Presentation-oriented 2、Service-oriented。随着Web被逐渐用于deliver service,那些service providers逐渐认识到在Web中提供动态内容的重要性。随之出现了CGI。CGI的缺点我就不说啦,其实我没大用过CGI,汗一个!不过据说是有很多缺点的,比如平台相关性,lack of scalability。于是servlet适时而出了!
关于servlet的细节我就不具体提了,我也有待学习,这里之所以提到servlet,是因为struts中的一个核心部件就是一个servlet,所以在这里简单提一下servlet,以供读者检查自己是否应该先去了解一下servlet。Model 1简单讲就是只用JSP,而不用servlet,这里的用与不用,仅是对web开发人员而言,因为JSP最终还是会被translate为servlet(这里用translate是遵照官方用词,国内很多书翻为编译,个人认为不是很恰当)。其实出现Model 1的原因也很简单,因为用servlet来构造一个网页不胜其烦,一堆的out.pringln(...)让人整个感觉是手工构造一个网页,在这个所见即所得的今天,我们可能永远无法想象它的繁琐性!于是出现了JSP,把那些工作交给了web container,我们只需用所见即所得的tool构造web,然后在web中适当的地方加入java代码即可。好,点到为止,再具体就是jsp的内容了。但后来人们发现,完全抛弃servlet并不是一个好的idea,其中的一个关键问题就是content与presentation混杂在一起,非常不利于维护和修改。于是人们又提出了结合jsp与servlet来开发web,这就是Model 2,它本质上是经典MVC模式的一个变种。这里推荐一篇文章Understanding JavaServer Pages Model 2 architecture ,专门介绍Model2的,希望对大家有所帮助,这也是struts官方网站上推荐的一篇文章!由于我们的主题是struts,所以我们就不细谈这篇文章了。
当然我也希望读者对MVC模式有所了解,如果否,请看MVC的源头。了解一下它吧,一个很好的东东!
好,准备东西讲完了,我们下面开始看struts!
struts从结构上讲是符合Model2的,先简单介绍一下它的情况,它的目的就是要解决Model 1中的flow control的问题,并使得内容(Model)与表现(View)彻底分离。Struts是在2000年5月由Craig R. McClanahan发起的。并在2001年7月发布了1.0版。(休息一下)
posted @ 2006-02-18 21:06 未来刀客 阅读(228) | 评论 (0)编辑 收藏