1.SpringMVC是什么?

答:springmvc是spring的一个子模块,是基于MVC模式的一个表现层框架,极大简化表现层代码开发。

2.SpringMVC的执行流程

2018-01-21 Springmvc知识点集锦

1.用户向服务器发送请求,请求被Spring的前端控制器DispatcherServlet捕获,他会调用系统的其他模块处理用户请求。


2.DispatcherServlet接收到请求之后,根据请求的信息以及HandlerMappering的配置找到处理该请求的Handler。


3.DispatcherServlet根据Handler选择一个合适的HandlerAdapter,HandlerAdapter对该处理器进行封装。


4.HandlerAdapter是一个适配器,它用同一的接口对Handler中的方法进行调用。


5.Handler完成用户请求之后,返回一个ModelAndView对象给DispatcherServlet,ModelAndView包含数据模型和相应的视图信息。


6.DispatcherServlet获取到ModelAndView后,调用视图解析器ViewResolver进行视图解析,并返回视图对象给DispatcherServlet。


7.当得到视图对象后,DispatcherServlet会利用视图对象对模型数据进行渲染。


8.最后将渲染结果返回给客户端。


三.SpringMVC常用的注解有哪些?

答:
[email protected]  定义一个SpringMVC控制器对象。@Conponent 生命bean。@Respository  声明dao层的bean。
[email protected]  处理请求地址映射
[email protected]和@Autowired   bean注入的时候使用。
[email protected]   将请求URL的模板变量映射到功能处理方法的参数上。
[email protected]   获取前端传递过来的参数。
[email protected]  用于将Controller的方法返回的对象,通过适当的HttpMessageConverter转换成指定格式后,写入到Response对象的body数据区中。

四.<mvc:annotation-driven>:用于开启注解处理器和适配器。

五.如何解决get和post乱码的问题?
答:解决post请求乱码:可以在web.xml里面配置一个CharecterEncodingFilter过滤器。设置为utf-8。
       解决get乱码问题:
     a.修改tomcat配置文件添加编码和工程编码一致。
 b.另外一种方法对参数进行重新编码:String name = new String(Request.getParameter("userName").getBytes("ISO8859-1"),"utf-8")


相关文章: