编程论坛
注册
登录
编程论坛
→
J2EE论坛
Struts 和Struts2两者区别在哪里?如何熟练应用这些呢?小弟是菜鸟请高手指教!
ablikim
发布于 2010-09-01 14:02, 1290 次点击
小弟是初学者,纯纯的菜鸟一个,请大虾们指教哈!
这两个到底有什么区别,我们学习struts时应该从哪几方面入手。 两者的优缺点是什么呢?
谢谢了!!!!
8 回复
#2
syg5434
2010-09-01 17:31
是struts1和struts2的区别吧?
给我你的邮箱,我发给你一本电子书,期望能对你有所帮助
学习这个从mvc开始吧,个人感觉
#3
ablikim
2010-09-02 12:07
回复 2楼 syg5434
呵呵,谢谢 ,
E_mail:382325792@
#4
syg5434
2010-09-02 13:34
发过去了,有一个比较大的200多M,发不了
这几本希望能对你有所帮助
#5
ablikim
2010-09-02 17:58
回复 4楼 syg5434
呵呵,看了你给我发的PDF文档,感觉不错。很实用。
希望有关于SSH方面的问题请多多指教啊!
#6
syg5434
2010-09-03 09:38
那几本上关于struts1和struts2好像没有说太多,我再这补充一下,你也许在其他地方也看到过:
首先,Struts2和Struts1体系的差别非常大,从数据流程上看,Struts2和WebWork相差不大,主要是因为Struts2是以 WebWork的设计思想为核心,吸收了Struts1的部分优点,建立了一个兼容WebWork和Struts1的MVC框架。
Struts1框架的程序运行流程:
struts1框架以ActionServlet作为核心控制器,整个应用由客户请求驱动。当客户端向Web应用发送请求时,请求将被Struts1的核心控制器ActionServlet拦截,ActionServlet根据请求决定是否需要调用逻辑控制器处理用户请求,当用户请求处理完成后,其处理结果通过JSP呈现给用户。
Struts1是非常优秀的设计,但是也有不足之处:
1、支持的表现层技术单一,只支持jsp作为表现层技术。
2、与Servlet API严重耦合,难于测试:依赖Servlet API,而Servlet API严重依赖于Web服务器,脱离了web服务器,测试非常困难。
3、代码严重依赖于Struts1API,属于侵入式设计:其中的Action类必须继承Struts1的Action基类,实现处理方法时,包含大量Struts1API:如ActionMapping,ActionForm,ActionForward等,一旦系统需要重构,这些Action完全没有利用价值。
Struts2框架的大致处理流程:
1、浏览器发送请求
2、核心控制器FilterDispatcher根据请求决定调用合适的Action
3、拦截器链自动对请求应用通用功能(validation,文件上传等)
4、回调Action的execute方法,该execute方法先获取用户请求参数,然后执行某种数据库操作。实际上,因为Action只是一个控制器,它会调用业务逻辑组件来处理用户的请求。
5、Action的execute方法处理结果信息将被输出到浏览器中,可以是HTML页面、图像,也可以是PDF文档或者其他文档。
相对于Struts1的优点:
1、没有线程安全问题
2、不再依赖于Servlet API
3、仍然可以使用JSTL,还整合了OGNL(Object Graph Notation Language)使表达式语言功能更强大
希望能够对你有所帮助。
#7
wei0000
2010-09-14 17:25
还不怎么明白
#8
woijava
2010-10-31 13:52
给你个网址,里面讲的很详细 http://woijava.tk/archives/struts1-struts2.html
#9
shiyuehai
2011-01-17 10:27
回复 4楼 syg5434
能不能也发个给我,我也是初学者,想学习下,邮箱549927743@,麻烦了
1