1.SpringMVC的工作流程是什麼?
1、用戶發送請求至前端控制器DispatcherServlet。
2、DispatcherServlet調用HandlerMapping處理器映射器,找到後生成處理器對象及處理器攔截
器(如果有則生成)返回給DispatcherServlet。
3、DispatcherServlet調用HandlerAdapter處理器適配器,執行處理器(Controller),完成返回
ModelAndView給DispatcherServlet。
4、DispatcherServlet將ModelAndView傳給ViewReslover視圖解析器,解析後返回具體的View。
5、DispatcherServlet對View進行數據渲染(即將模型數據填充至視圖中)。
6、跳轉到對應View,響應給用戶。
2.如何解決POST/GET請求中文亂碼?
解決POST中文亂碼,在web.xml添加utf-8編碼過濾器即可。
<filter>
<filter-name>springEncoding</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>springEncoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
解決GET請求中文亂碼方法1:配置Tomcat服務器的編碼方式。
tomcat8及以後的默認編碼格式是utf-8;tomcat7及之前的默認編碼格式是iso8859-1。
如果是tomcat7及之前版本服務器,修改GET請求中文亂碼:在conf/server.xml文件中找到:
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
在其裏面加入 :URIEncoding="UTF-8"
解決GET請求中文亂碼方法2:對GET請求的請求參數重新設置編碼方式。
String name = new String(request.getParamter("name").getBytes("ISO8859-1"),"utf-8");
3.Spring事務管理
編程式事務管理和聲明式事務管理。後者更常用,又分爲基於xml方式和註解方式。