SpringMVC框架的介绍

SpringMVC是什么

SpringMVC是一种基于Java的实现MVC设置模型的请求驱动类型的轻量级Web框架,属于Spring FrameWork的后续产品,已经融合在Spring Web Flow里面。Spring框架提供了构建Web应用程序的全功能模块。使用Spring可插入的MVC架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的Spring MVC框架或集成其他MVC开发框架。SpringMVC已经成为目前最主流的MVC框架之一,它通过一套注解,让一个简单的Java类称为处理请求的控制器,而无需实现任何接口。同时它还支持RESTful编程风格的请求。

SpringMVC的优势

1、清晰的角色划分:

  • 前端控制器(DispatchServerlet)
  • 请求到处理器映射(HandlerMapping)
  • 处理器适配器(HandlerAdapter)
  • 视图解析器(ViewResolver)
  • 处理器或页面控制器(Controller)
  • 验证器(Validator)
  • 命令对象(Command 请求参数绑定到的对象就叫命令对象)
  • 表单对象(Form Object 提供给表单展示和提交到的对象就叫表单对象)

2、分工明确,而且扩展点相当灵活,可以很容易扩展,虽然几乎不需要。
3、由于命令对象就是一个POJO,无需集成框架特定API,可以使用命令对象直接作为业务对象。
4、和Spring其他框架无缝集成,是其它Web框架所不具备的。
5、可适配,通过HandlerAdapter可以支持任意的类作为处理器。
6、可定制性,HandlerMapping、ViewResolver等能够非常简单的定制。
7、功能强大的数据验证、格式化、绑定机制。
8、利用Spring提供的Mock对象能够常见的进行Web层单元测试。
9、本地化、主题的解析的支持,使我们更容易进行国际化和主题的切换。
10、强大的JSP标签库,是JSP编写更容易。
......

SpringMVC和struts2的优略分析

共同点:

  • 它们都是表现层框架,都是基于MVC模型编写的。
  • 它们的底层都离不开原始ServletAPI。
  • 它们处理请求的机制都是一个核心控制器。

区别:

  • Spring MVC的入口是Servlet,而Struts2是Filter
  • Spring MVC是基于方法设计的,而Struts2是基于类,Struts2每次执行都会创建一个动作类。所以Spring MVC会稍微比Struts2快些。
  • Spring MVC使用更加简洁,同时还支持JSR303,处理ajax的请求更方便(JSR303是一套JavaBean参数校验的标准,它定义了很多常用的校验注解,我们可以直接将这些注解加在我们JavaBean的属性上面,就可以在需要校验的时候进行校验了。)
  • Strust2的OGNL表达式是页面的开发效率相比Spring MVC更高些,但执行效率并没有比JSTL提升,尤其是struts2的表单标签,远没有html执行效率高。
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • SpringMVC的工作原理图: SpringMVC的工作原理图: SpringMVC流程 1、 用户发送请求至前...
    我不饿我不想吃东西阅读 942评论 0赞 1
  • 对于java中的思考的方向,1必须要看前端的页面,对于前端的页面基本的逻辑,如果能理解最好,不理解也要知道几点。 ...
    神尤鲁道夫阅读 953评论 0赞 0
  • 额(⊙o⊙)…继续记笔记。。。看看SpringMVC从入门到放弃之第一章Web MVC简介一个在实验室的时候就是这...
    键盘瞎阅读 2,194评论 2赞 10
  • 多少个夜晚,睡不着,玩着手机,一遍又一遍刷着朋友圈,刷着微博,感到是浪费时间,无聊透了,可又不知道能干点什么有...
    老猫咸鱼阅读 997评论 0赞 0
  • 长到这么大, 我说不出来我最爱的一部电影, 说不出来我最爱的一首歌, 说不出来我最爱的一个人。 时常觉得人生其实没...
    d80e949a65ee阅读 135评论 0赞 0

友情链接更多精彩内容