1. 程式人生 > >Spring mvc + jackson2 返回json格式(包含日期格式解析)

Spring mvc + jackson2 返回json格式(包含日期格式解析)

寫了那麼多,發現白忙活了一場,原來jackson也有一個@JsonFormat註解,將它配置到Date型別的get方法上後,jackson就會按照配置的格式轉換日期型別,而不自定義轉換器類,欲哭無淚啊。辛苦了那麼多,其實別人早已提供,只是沒有發現而已。

不說了,直接上方案吧。

1.spring配置照樣是這樣:

  1. <mvc:annotation-driven>

2.JsonUtil可以不用了,但如果要自己從response物件輸出json,那麼還是可以用,但改成了這樣

  1. package com.xxx.utils;  
  2. import java.io.IOException;  
  3. import java.text.SimpleDateFormat;  
  4. import org.springframework.stereotype.Component;  
  5. import com.fasterxml.jackson.databind.ObjectMapper;  
  6. /** 
  7.  * json處理工具類 
  8.  * @author zhangle 
  9.  */
  10. @Component
  11. publicclass JsonUtil {  
  12.     privatestaticfinal String DEFAULT_DATE_FORMAT="yyyy-MM-dd HH:mm:ss";  
  13.     private
    staticfinal ObjectMapper mapper;  
  14.     static {  
  15.         SimpleDateFormat dateFormat = new SimpleDateFormat(DEFAULT_DATE_FORMAT);  
  16.         mapper = new ObjectMapper();  
  17.         mapper.setDateFormat(dateFormat);  
  18.     }  
  19.     publicstatic String toJson(Object obj) {  
  20.         try {  
  21.             return
     mapper.writeValueAsString(obj);  
  22.         } catch (Exception e) {  
  23.             thrownew RuntimeException("轉換json字元失敗!");  
  24.         }  
  25.     }  
  26.     public <t> T toObject(String json,Class<t> clazz) {  
  27.         try {  
  28.             return mapper.readValue(json, clazz);  
  29.         } catch (IOException e) {  
  30.             thrownew RuntimeException("將json字元轉換為物件時失敗!");  
  31.         }  
  32.     }  
  33. }</t></t>  

3.實體類的get方法就需要多一個@JsonFormat的註解配置

  1. @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")  
  2. @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")  
  3. public Date getCreateTime() {  
  4. returnthis.createTime;  
  5. }  
  6. @DateTimeFormat(pattern="yyyy-MM-dd")  
  7. @JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8")  
  8. public Date getBirthday() {  
  9.     returnthis.birthday;  
  10. }  

相關推薦

Spring mvc + jackson2 返回json格式包含日期格式解析

寫了那麼多,發現白忙活了一場,原來jackson也有一個@JsonFormat註解,將它配置到Date型別的get方法上後,jackson就會按照配置的格式轉換日期型別,而不自定義轉換器類,欲哭無淚啊。辛苦了那麼多,其實別人早已提供,只是沒有發現而已。 不說了,直接上方

Spring MVC返回JSON資料的幾種方式

我們都知道Spring MVC 的Controller方法中預設可以返回ModeAndView 和String 型別,返回的這兩種型別資料是被DispatcherServlet拿來給到檢視解析器進行繼續處理返回頁面的,而不是直接返回給客戶端的。有時候我們需要發請求後讓服務端直接返回一些資料,不再經過Dispa

Spring MVC返回JSON數據的幾種方式

return res set 轉換 public servlet 兩種 dispatch ont 我們都知道Spring MVC 的Controller方法中默認可以返回ModeAndView 和String 類型,返回的這兩種類型數據是被DispatcherServlet

spring mvc如何返回json資料

springmvc如何返回json資料 常用的方法有兩種: 1.利用Gson等json轉換工具,將物件轉換成json字串,並通過HttpServletResponse將json字串返回給前臺 @RequestMapping("/getJson1")

Spring MVC返回Json陣列資料

建立User package com.po; public class User { private String userName; private String passWord; publ

Spring MVC過濾器-上下文資訊過濾器AbstractRequestLoggingFilter及其子類

        AbstractRequestLoggingFilter類定義了兩個方法beforeRequest和afterRequest分別用於設定過濾前後執行的操作,它有三個子類,分別是CommonsRequestLoggingFilter、ServletContex

Spring MVC 作用域 SessionScope方法如何使用此方法

SessionScope是獲取當前Session全部物件例如:我想實現一個不同許可權登入顯示不同頁面的操作//獲取session物件,然後用物件名.id獲取到當前id 或者 獲取到當前許可權的狀態並且判

Spring mvc 使用 jackson2 返回json格式資料時資料的構成

xml: <bean id="viewResolver" class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver"> <pro

Spring MVC 前後臺傳遞json格式數據 Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported

support style logs ica spring enc json格式數據 分享 技術 報錯如下: Content type ‘application/x-www-form-urlencoded;charset=UTF-8‘ not supported

spring mvc在接收資料時包含日期格式的資料,報404

@InitBinder public void initBinder(WebDataBinder binder) { SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); date

Spring MVC 學習筆記 json格式的輸入和輸出

                Spring mvc處理json需要使用jackson的類庫,因此為支援json格式的輸入輸出需要先修改pom.xml增加jackson包的引用        <!-- json -->        <dependency>            &l

Spring MVC 介面返回json資料過濾空值

前後端互動時,後端返回給前端是一個json,json中的值是由一個物件轉換而來的,有時候該物件中可能某些欄位的值是空,返回給前端的json就會出現某些key的value是空,在默寫情況下不利於前端處理。 其實在後端返回時可以進行資料過濾,將物件是為空的欄位自動過濾掉。一行程

Spring MVC 的 研發之路

eight 對象 files tin servlet映射 資源 研發 領域 延遲 二、web.xml的簡單配置介紹1 1、啟動Web項目時,容器回去讀web.xml配置文件裏的兩個節點<context-param>和<listener

Spring MVC-處理程序映射Handler Mapping-控制器類名稱處理程序映射Controller Class Name Handler Mapping示例轉載實踐

back app ppi lsp class obj ner schema over 以下內容翻譯自:https://www.tutorialspoint.com/springmvc/springmvc_controllerclassnamehandlermapping.h

Spring MVC中傳遞json數據時顯示415錯誤解決方法

ping 數據 value 解決方法 傳遞 ica ons pub eth 在ajax中設置 ContentType為‘application/json;charset=utf-8‘ 傳遞的data類型必須是json字符串類型:{“key”:"va

Spring MVC的WebMvcConfigurerAdapter用法收集零配置,無XML配置

clas security net turn 信息 xxx jsonview frame ppi 原理先不了解,只記錄常用方法 用法: @EnableWebMvc 開啟MVC配置,相當於 <?xml version="1.0" encoding="UTF-

解決Spring MVC @ResponseBody返回中文字符串亂碼問題

有效 per log bean dia media converter 原因 ons 引起亂碼原因為spring mvc使用的默認處理字符串編碼為ISO-8859-1 具體參考org.springframework.http.converter.StringHttpMess

Spring MVC —— 前後臺傳遞JSON

後臺 print col 方法 http .ajax AS RR map 1. 傳遞JSON參數 vardata = {‘id‘:1,‘name‘:‘abc‘}; $.ajax({ type:‘post‘, url:‘homePageAction.do?t

Spring MVC @RequestMapping註解詳解2

並不是 value get ecif 使用 .com java代碼 處理方法 分開 @RequestMapping 參數說明   value:定義處理方法的請求的 URL 地址。(重點)   method:定義處理方法的 http method 類型,如 GET、POST

Spring mvc,jQuery和JSON資料互動

一、實驗環境的搭建 1、Spring mvc jar。 匯入spring mvc執行所需jar包。匯入如下(有多餘)     2、json的支援jar       3、加入jQuery。