spring MVC框架介绍

        Spring Web MVC框架围绕着DispatcherServlet设计的,具有可配置的处理映射,视图解析,本地化和主题解析,同时支持上传文件,DispatcherServlet分派每一个请求给处理器处理。默认的处理器是基于注解@Controller和@RequestMapping,提供了很灵活的处理方法。根据Spring MVC3.0的介绍,@Controller机制通过注解@PathVariable和其他的特征允许我们创建RESTful的站点和应用程序。

        Spring Web MVC中,可以使用任何的对象作为命令对象或者表单对象,不用实现框架指定的接口或者基类。Spring的数据绑定具有很高的灵活性,比如处理类型匹配错误作为应用程序表达的校验错误,而不是系统错误。我们不需要在表单对象中重复映射业务对象简单的,非类型化的String属性来处理无效的提交或者转化成合适的Strings。相反,spring 直接绑定属性到业务对象上。

        Spring的视图解析方案也是很灵活的,Controller有责任为模型Map准备数据,选择视图名称或者直接写响应流进而完成请求。通过文件扩展或者Accept header中的内容类型协约,通过bean名称,属性文件,甚至自定义的ViewResolver实现,视图解析方案具有很高的可配置性。模型(model,指MVC中的是Map接口,作为视图技术的纯抽象。我们可以和基于渲染技术的模板直接整合。比如Jsp,Velocity , Freemarker,或者直接生成XML,JSON,Atom及其其他类型的内容。

        Spring的web模块包含很多唯一的web支持特征:

清晰的角色分离:每一个角色,控制器,校验器,命令对象,表单对象,模型对象,DispatcherServlet,处理器映射,视图解析器等等都有各自分离的对象实现。

框架和应用程序JavaBean类很强大的,直接的配置

适应性,非侵入性,灵活性:对于给定的场景,定义所需的控制器方法签名,仅可能需要参数注解(@RequestParam, @RequestHeader,@PathVariable等等)

重用的业务代码:使用已存在的业务对象作为命令对象或者表单对象,而不是复制他们来继承指定框架的基类。

可定制的绑定和校验:类型匹配错误作为应用级别的错误,保存着令人厌烦的错误值,本地化日期和数据绑定等等,而不是解析或者转化成业务对象的仅仅是string的表单对象。

可定制的处理器映射和视图解析方案:处理器映射和视图解析策略从简单的基于URL配置变化到复制的构建目的的解决策略。

灵活的模型转化:名值map的模型转化器很容易和其他的视图技术整合。

可定制的本地和主题解析方案:支持JSP,无论是否使用spring标签,支持JSTL,支持Velocity等等

beans的生命周日被定义在当前的HTTP请求或者HTTP session中。这个不是spring MVC本身的特定的特征,而是WebApplicationContext容器的特征。这些bean的作用域被描述于Request, session, and global session scopes中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值