請求
特定 HTTP 方法
@GetMapping / @PostMapping / @PutMapping / @DeleteMapping / @PatchMapping
即為 @RequestMapping(method=HttpMethod.XXX),HttpMethod 為提供的列舉。
URI 模式
字符
描述
範例
?
配對一個字元
---- "/pages/t?st.html" ---- /pages/test.html ; /pages/t3st.html
*
配對路徑中的零到多個字串
---- "/resources/*.png" ----
/resources/file.png
---- "/projects/*/versions" ----
/projects/spring/versions
**
配對路徑中的零到多個 字串,直到路徑結束
---- "/resources/**" ---- /resources/file.png ; /resources/images/file.png
{name}
配對路徑中 key value 關係,搭@PathVariable
---- "/projects/{project}/versions" ----
/projects/spring/versions,
為 project = spring
{name:正則表達式}
即配對其指定正則
---- "/projects/{project:[a-z]+}/versions" ----
/projects/spring/versions
可接受的媒體類型
consumes,即為請求的 Content-Type
,可透過 MediaType 列舉使用。
且還支持否定表達式,表示以外的內容,如下:
可生產的請求類型
produces,即為請求的 Accept
標頭,可透過 MediaType 列舉使用。
且還支持否定表達式,表示以外的內容,如下:
處理方式
方法參數 / 返回值 / 類型轉換 / queryString 的矩陣變量 / 轉導 / Session / Cookie / 檔案 等等。
例外處理 - AOP
@Controller
和 @ControllerAdvice
可以使用 @ExceptionHandler 捕捉異常的例外。
其他替代方案
明確註冊
注入目標處理程序和控制器的處理程序映射。
Prepare the request mapping meta data.
獲取處理程序方法。
添加註冊。
Functional Endpoints
Last updated
Was this helpful?