原文地址:http://www.work100.net/training/monolithic-frameworks-spring-mvc-other-annotation.html
更多教程:光束雲 - 免費課程html
序號 | 文內章節 | 視頻 |
---|---|---|
1 | @ModelAttribute | - |
2 | @ResponseBody | - |
請參照如上章節導航
進行閱讀java
@ModelAttribute
具備以下三個做用:spring
綁定請求參數到命令對象:json
放在功能處理方法的入參上時,用於將多個請求參數綁定到一個命令對象,從而簡化綁定流程,並且自動暴露爲模型數據用於視圖頁面展現時使用spring-mvc
暴露 @RequestMapping
方法返回值爲模型數據:mybatis
放在功能處理方法的返回值上時,是暴露功能處理方法的返回值爲模型數據,用於視圖頁面展現時使用mvc
暴露表單引用對象爲模型數據:app
放在處理器的通常方法(非功能處理方法)上時,是爲表單準備要展現的表單引用對象,如註冊時須要選擇的所在城市等,並且在執行功能處理方法(@RequestMapping
註解的方法)以前,自動添加到模型對象中,用於視圖頁面展現時使用框架
暴露表單引用對象爲模型數據的例子:異步
@ModelAttribute public User get(@RequestParam(required = false) String id) { User entity = null; if (StringUtils.isNotBlank(id)) { entity = userService.get(id); } if (entity == null) { entity = new User(); } return entity; }
@ResponseBody
註解表示該方法的返回的結果直接寫入 HTTP 響應正文(ResponseBody
)中,通常在異步獲取數據時使用,一般是在使用 @RequestMapping
後,返回值一般解析爲跳轉路徑,加上 @ResponseBody
後返回結果不會被解析爲跳轉路徑,而是直接寫入HTTP 響應正文中。
該註解用於將 Controller
的方法返回的對象,經過適當的 HttpMessageConverter
轉換爲指定格式後,寫入到 Response
對象的 body
數據區。
返回的數據不是 html
標籤的頁面,而是其餘某種格式的數據時(如:json
、xml
等)使用
若是須要返回自定義對象爲 JSON
數據類型,須要增長 jackson
依賴,pom.xml
配置文件以下:
<!-- Json Begin --> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>2.9.5</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.9.5</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-annotations</artifactId> <version>${jackson.version}</version> </dependency> <!-- Json End -->
上一篇:表單標籤庫
下一篇:MyBatis
若是對課程內容感興趣,能夠掃碼關注咱們的
公衆號
或QQ羣
,及時關注咱們的課程更新