SpringBoot響應客戶端渲染數據
1、SpringBoot構造並且返回一個json對象
首先,我們在父包下新建一個pojo的包,並新建一個User類
IDEA自動生成對應的get/set,然后再新建一個UserController。
這次我們分別使用@Controller、@RequestMapping來定義Controller,注意如果單純只寫一個@Controller運行時會報錯(映射失敗)。方法和之前的一樣,但是我們新增了一個@ResponseBody,這將讓方法返回一個json對象。
請求url,可以看到返回的數據是以json形式傳輸給前台的。
當然,有過項目開發經驗的朋友一定知道這樣的json格式是不符合開發需求的
正常的json返回,應該自定一些狀態碼,然后將數據放到data中
重新請求url后,就可以看到正常的json返回形式。
當然我們只是按照傳統的SpringMVC的注解形式,那么在SpringBoot中,我們可以直接使用@RestController,並將@Controller、@ResponseBody等注釋掉
重新運行程序后,其結果還是一樣的。
之前說到的User類中有部分屬性值是存在一些問題的,比如獲取用戶對象時不返回密碼,還有生日的格式問題,且desc是空的,那么其實對於前端是沒有必要獲取的。
通過注解的形式,@JsonIgnore即忽略這個屬性,@JsonFormat就是格式化輸出,pattern是形式,locale是地區,timezone即時區(東八區),@JsonInclude是判斷屬性,當為null時不向前台輸出。
重新運行程序后,可以看到返回的json將更加完美。