0
点赞
收藏
分享

微信扫一扫

邮箱的正则表达式

1kesou 03-24 19:00 阅读 2

1、什么是SpringMVC

        SpringMVCj就是一个Spring内置的MVC框架(Model-View-Controller),解决页面代码和后端代码的分离。

2、SpringMVC的执行流程

  1. 用户发送请求给前端控制器(DispatcherServlet)
  2. 前端控制器接收到请求后调用处理器映射器(HandlerMapping)
  3. 处理器映射器找到处理器,生成处理器对象和处理器拦截器,然后返回给前端控制器
  4. 前端控制器调用处理器适配器(HandlerAdapter)
  5. 处理器适配器经过适配调用具体的处理器(Controller)
  6. 处理器执行完成返回ModelAndView对象
  7. 处理器适配器将Controller执行结果ModelAndView返回给前端控制器
  8. 前端控制器将ModelAndView传给视图解析器(ViewReslover)
  9. 实体解析器解析ModelAndView后返回具体的视图(View)给前端控制器
  10. 前端控制器根据View进行渲染视图
  11. 前端控制器响应View给用户

3、常用注解

3.1、注解原理是什么

注解本质是一个继承了Annotation的特殊接口,其具体实现类是Java运行时生成的动态代理类。我们通过反射获取注解时,返回的是Java运行时生成的动态代理对象。通过代理对象调用自定义注解的方法,会最终调用AnnotationInvocationHandler的invoke方法。该方法会从memberValues这个Map中索引对应的值。而memberValues的来源是Java常量池。


3.2、SpringMVC常用的注解有哪些
  • RequestMapping:用于处理请求url映射的注解,可用于类和方法上。用于类上,则表示类中所有响应请求的方法都是以该地址作为父路径。
  • RequestBody:注解实现接受http请求的json数据,将json转换为java对象
  • ResponseBody:注解实现将controller方法返回对象转化为json对象响应给客户
3.3、@PathVariable和@RequestParam的区别

#{} 预编译处理     ${} 字符串替换

请求路径上有个id的变量值,可以通过@PathVariable来获取@RequestMapping(value="/page/{id}")

@RequestParam用来获取静态的URL请求入参spring注解时action用到 ?

4、其他

4.1、SpringMVC怎么样设定重定向和转发的

(1)转发:子啊返回值前面加"forward:",如forward:user.do?name=method4

(2)重定向:在返回在前面加"redirect",如redirect:http://www.baidu.com

4.2、SpringMVC里面拦截器怎么写

一种是实现HanderInterceptor接口,另一种是继承适配器类,接着在接口方法中,实现处理逻辑;然后在SpringMVC的配置文件中配置拦截器即可。

举报

相关推荐

0 条评论