Spring MVC基础

springmvc架构流程



//springmvc三大组件:处理器映射器,处理器适配器,试图解析器
//需要用户开发的组件:handler,view
//@RequestMapping:定义请求url到处理器功能方法的映射
//处理器映射器根据请求url找到具体的处理器,生成处理器对象返回给前端控制器
//前端控制器通过处理器适配器调用处理器

配置处理器映射器和处理器适配器,在springmvc.xml下配置
          <mvc:annotation-driven>
视图解析器支持jsp视图解析

@RequestParam用于处理简单类型的绑定

使用pojo接收表单数据     //pojo对象中的属性和表单中input的name属性一致即可,会自动将请求参数赋值给pojo属性

自定义参数绑定需要配置转换器converter

参数问题
post提交可以在web.xml中配置一个过滤器
get提交可以对参数进行重新编码,tomcat默认编码是iso-8859-1

springmvc与struts2不同
1.springmvc入口是一个servlet,而struts2入口是一个filter过滤器
2.springmvc是基于方法开发(一个url请求对应一个方法),将请求参数传递到方法中参数
     struts是基于类开发,传递参数是通过类属性(模型驱动,属性驱动),只能是多例的
3.struts2采用值栈存储请求和响应数据,springmvc是将数据和视图封装成ModelAndView对象,通过request域传输到页面

如果程序发生异常可以配置异常处理器来解决

json数据交互
@RequestBody     将读到的内容转换为java对象并绑定到Controller方法的参数上
@ResponseBody     将Controller返回的参数转换为指定的数据格式,通过response响应给客户端


拦截器配置
编写一个类实现HandlerInterceptor接口,实现三个方法
//controller执行前调用preHandle     按拦截器定义顺序调用
//controller执行后未返回视图前调用postHandler     按拦截器定义逆序调用
//controller执行后且视图返回后调用afterCompletion     按拦截器定义逆序调用

postHandler在被拦截器链内所有拦截器返回true后调用
afterCompletion只有preHandle返回true才调用






































































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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值