struts比servlet高级在哪?和servlet相比它的好处在哪?
我也算是有一定的基础,但发现struts就是接收参数方便一些而已,其它貌似没什么很大的好处,求高价指点
struts的基础还是servlet
核心控制器也是ActionServlet
所以并不能说高级在哪,只能说struts比传统的servlet在某些方面有改变。我来给你做一些比较,希望对你有帮助。
1.开发时间。这个的对比是struts比servlet低。因为struts有一些配置文件,如果有些不注意思,出错的机会比servlet大,不如使用jsp+servlet开发随意。
2.代码的规范。因为jsp+servlet开发随意。规范性应差。控制语句到处有,为维护及修改带来不便。也使接手的人为解读代码带来不便。
3.安全性。web开发最不安全的就是session的使用.servlet的开发离不开request。有了request,那也就有了session,以前我们有个组开发,乱用session,使系统的性能很着。而且有很多保密迹旦信息外漏。如果你在serlet中封装request,那你就会发现越来越象struts。而struts的值都保存在ActionForm中,所以进行简单的封装就可以使底层人员,看不到requet,又不影响取值。
4.维护性。这个基本处于项目后期,这个的比较,就是struts远胜于servlet。只在PM控制的好。那么struts项姿迹扰目的代码分层很清晰。数据层,页面表示,页面控制,业务处理,这些都会分好模块。这给后期维护带来了很大的方便。因为后期的话,谁也不想引入新的BUG,如果用servlet,代码州空结构不清晰,很空易引入新BUG。这也是struts最强势的地方。
struts最受人指责的地方就是前期布署,开发比较费时。所以现在的方向是便捷开发易编创护框架的开发。
在java web开发领域存在2种开发模式,
模式一,jsp+javabean
模式二,jsp+javabean+servlet,即所谓的MVC设计,struts只不过是遵循MVC的一个开源框架.
在模式一中(jsp+javabean),这种设计模式适合,小规模web开发,体现在轻巧兴,也就是更轻量级一些(内存加载的类少,相对struts而言),但是jsp中会嵌入大量的html和java脚本,规模小还好,如果大型企业web,随着规模的加大,太多的html和java脚本交织在一起,可读性差,而且修改一个jsp可能会牵连到其他的页面.
现在大规模的企业开发都选择struts,因为他成功的吧web分为三层,即模型,视图,控制器,在开发团队中更容易分工,而且逻辑部分和显示部分被分离到,module和jsp中去了,可仔塌段读性也好了,但是struts在启动的时候要加载一些额外的类(struts的类),这对于小型企业用的低端服务器来说,会站内存,降低速度.
所以,本人在开发中得念誉到的总结是小规模开发用jsp+javabean,大规模的用struts
而servlet是java服务器端小程序的意思,jsp最终也是读取并编译成servlet加载到内存,jsp在内存中也是以servlet形式存在的.
struts是jsp+servlet+javabean的MVC实现,其中C\即controller控制器的意思,这部分就是servlet,也就是说struts里用servlet来作控制器衫散
Struts的核心之一此冲肢,是其使用了前端控制器模式(Front Controller,即ActionServlet),将导航功能集中处理,避免了servlet里随意放置的维护困难。
另外一个优势在于其提供了一些基本的验证、标签库等方便web编程的工具。
如果你用了Struts2,里面用到了好多注入的技术,例如可以在页面上取得Bean值;森世此外添加了好多利于编码的拦截器,加入了ajax支持。
经常见到一些初学jsp编程的人在页面里放置大量的逻辑代码甚至跳转代码,用了Struts可以很好的避免这些。总之,如果你在进行Servlet/JSP/JavaBean这样操作时能够自觉遵循MVC思想,完全可以不用Struts,在公司里用这个主要是为了统一流程,便于维护。判洞
Structs是采用了servlet/jsp等技术,相比servlet有了很大的改进,加入了MVC设计模式、Tag标粗物签库,Struct也可以说是java Web开发的岩枯液集成框架,对于项目的团队败粗开发、运行维护都有较好的解决方案。相对来说servlet是比较基础的技术了,个人做些东西,还是可以用用的。
你没搞懂什么是struts什么是servlet
struts的mvc框架里 servlet是作为c存在的
好处
1 开发效率高,特别是request 数据再取得,数据再表示,数据复原时候效率高
2 mvc的优点,好处不用细说了
3 保证开发的一致性,比如友郑做有几千几万个画面系统的时候,
如果每个开发人员想法不同,编码习惯不同是很可怕的,用struts可以规范流程
杜绝此类事
4 国际化对应方便,画面深层跳转方便
5 jsp可读性提高
好处只有在桐肢一定规模以上的开发及维局告世护上才能看出来
很小的web系统,或许用不用无所谓