springMVC 常见面试问题

1.springMVC是表现层框架,DispatcherServlet前端控制器是整个流程的核心,由它调用其他组件处理用户的请求,降低了组件间的耦合性.HandlerMapping处理器映射器、HandlerAdapter处理器适配器、ViewResolver视图解析器为springMVC的三大组件.
2.SpringMVC的工作原理
① 用户向服务器发送请求,请求被springMVC前端控制器DispatcherServlet捕获;
② DispatcherServlet对请求的url进行解析,得到请求资源标识符(url),然后根据该url调用HandlerMapping将请求映射到处理器HandlerExecutionChain;
③ DispatcherServlet根据获取的Handler选择一个合适的HandlerAdapter适配器处理;
④ Handler对数据处理完成以后将返回一个ModelAndView()对象给DispatcherServlet;
⑤ Handler返回的ModelAndView()只是一个逻辑视图并不是一个正式的视图,DispatcherServlet通过ViewResolver视图解析器将逻辑视图转化为真正的视图View;
⑥ DispatcherServlet通过model解析出ModelAndView()中的参数进行解析最终展现出完整的view并返回给客户端
3.springMVC常用注解:
@Controller 标记类为控制器类,被springMVC控制用@RestController可以代替
@RequestMapping 用于请求 url 映射
@RequestBody注解实现接收http请求的json数据,将json数据转换为java对象
@ResponseBody注解实现将Controller方法放回对象转化为json响应给客户.
@RequestParam注解将指定的请求参数赋值给方法中的形参.
@SessionAttributes注解有选择地指定Model中的哪些属性需要转存到HttpSession对象当中
4.如何开启注解处理器和适配器?
在配置文件中开启mvc:annotation-driven来实现注解处理器和适配器的开启.
5.如何解决get和post乱码问题?
解决post乱码问题:在web.xml中配置一个CharacterEncodingFilter过滤器,设置为utf-8;
解决get乱码修改tomcat配置文件添加编码与工程编码一致.第二种方法 对参数进行重新编码String userName = New
String(Request.getParameter(“userName”).getBytes(“ISO8859-1”), “utf-8”);
6.SpringMVC怎么样设定重定向和转发的?
在返回值前加forward就是转发,加redirect就是重定向.

7.SpringMvc里面拦截器是怎么写的?
实现HandlerInterceptor接口或者实现WebRequestInterceptor接口,然后在配置器中配置使用mvc:interceptor标签

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值