一:什么是SpringMvc?
SpringMvc是一个基于MVC设计模式的Web框架
二:springMvc原理?
三、 SpringMVC常用的注解有哪些?
@RequestMapping:用于处理请求 url 映射的注解,可用于类或方法上。用于类上,则表示类中的所有响应请求的方法都是以该地址作为父路径。
@RequestBody:注解实现接收http请求的json数据,将json转换为java对象。
@ResponseBody:注解实现将conreoller方法返回对象转化为json对象响应给客户。
四:手写springMvc框架
自定义前端控制器
手写springmvc 原理分析
1.创建一个前端控制器()ExtDispatcherServlet 拦截所有请求(springmvc 基于servlet实现)
2.初始化操作 重写servlet init 方法
2.1 将扫包范围所有的类,注入到springmvc容器里面,存放在Map集合中 key为默认类名小写,value 对象
2.2 将url映射和方法进行关联
2.2.1 判断类上是否有注解,使用java反射机制循环遍历方法 ,判断方法上是否存在注解,进行封装url和方法对应存入集合
3.处理请求 重写Get或者是Post方法
3.1获取请求url,从urlBeans集合获取实例对象,获取成功实例对象后,调用urlMethods集合获取方法名称,使用反射机制执行