複習總結
day02-----------------SpringMVC
1、SpringMVC簡介
1. Spring爲展現層提供的基於MVC設計理念的優秀的WEB框架,是目前最主流的MVC框架之一。
2. 支持REST風格的url請求
3. 採用鬆散耦合的組件結構,比其他MVC框架更具擴展性
1.1 配置Web.xml
1.2 配置SpringMVC.xml
使用@RequestMapping映射請求,DispatcherServlet截獲請求後,就通過控制器上@RequestMapping提供的映射信息確定請求對應的處理方法。
2、SpringMVC的相關術語
2.1 @RequestMapping
2.2 method
2.3 params 和 headers
2.4 支持ant路徑
2.5 @PathVariable
2.6 Rest 風格的 URL
2.7 @RequestParam
2.8 @RequestHeader
2.9 @CookieValue
2.10 POJO(簡單Java對象)
2.11 Serlvet 原生的 API
2.12 ModelAndView
2.13 Map
2.14 @SessionAttributes
2.15 @ModelAttribute
2.16 配置直接轉發的頁面
2.17 重定向和轉發
2.18 SpringMVC處理靜態資源
3、攔截器
package com.atguigu.springmvc.interceptors;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
public class FirstInterceptor implements HandlerInterceptor{
/**
* 該方法在目標方法之前被調用.
* 若返回值爲 true, 則繼續調用後續的攔截器和目標方法.
* 若返回值爲 false, 則不會再調用後續的攔截器和目標方法.
*
* 可以考慮做權限. 日誌, 事務等.
*/
@Override
public boolean preHandle(HttpServletRequest request,
HttpServletResponse response, Object handler) throws Exception {
System.out.println("[FirstInterceptor] preHandle");
return true;
}
/**
* 調用目標方法之後, 但渲染視圖之前.
* 可以對請求域中的屬性或視圖做出修改.
*/
@Override
public void postHandle(HttpServletRequest request,
HttpServletResponse response, Object handler,
ModelAndView modelAndView) throws Exception {
System.out.println("[FirstInterceptor] postHandle");
}
/**
* 渲染視圖之後被調用. 釋放資源
*/
@Override
public void afterCompletion(HttpServletRequest request,
HttpServletResponse response, Object handler, Exception ex)
throws Exception {
System.out.println("[FirstInterceptor] afterCompletion");
}
}
4、SpringMVC異常處理