Java開發之微信小程序JSON接口日期時間數據轉換Util實例

2020-12-16 跟我一起學編程

前言

JSON日期時間轉換

有過微信小程序開發經驗的朋友肯定遇到過通過JSON轉換接口傳遞日期時間數據的問題,我們知道,一般的日期時間類型通過接口默認轉換的數據形式是: 「Thu Jan 03 11:00:54 CST 2019」 ,而不是我們所需要的「yyyy-MM-dd」或「yyyy-MM-dd HH:mm:ss」這種形式,導致在微信小程序裡顯示的時候不倫不類,也不美觀,下面我們就直接上代碼實例來給大家介紹。

日期轉換Util實例

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.Locale;

import net.sf.json.JsonConfig;

import net.sf.json.processors.JsonValueProcessor;

import org.apache.commons.net.ntp.TimeStamp;

public class JsonDateTimeValueProcessor implements JsonValueProcessor{

private String pattern = "yyyy-MM-dd HH:mm:ss";

@Override

public Object processArrayValue(Object value, JsonConfig config) {

return process(value);

}

@Override

public Object processObjectValue(String key, Object value, JsonConfig config) {

return process(value);

}

private Object process(Object value){

if(value instanceof Date){

SimpleDateFormat sdf = new SimpleDateFormat(pattern, Locale.UK);

return sdf.format(value);

}

if(value instanceof TimeStamp){

SimpleDateFormat sdf = new SimpleDateFormat(pattern, Locale.UK);

return sdf.format(value);

}

return value == null ? "" : value.toString();

}

}

感興趣或者有實際需要的朋友可將上述代碼保存成Java類Util文件,用到時直接調用即可。

JsonConfig config = new JsonConfig(); JsonDateTimeValueProcessor jsonValueProcessor = new JsonDateTimeValueProcessor(); config.registerJsonValueProcessor(Date.class, jsonValueProcessor); JSONArray json = new JSONArray();json =JSONArray.fromObject(XXXXXXX,config);

上面這段文字是調用時的內容,其中XXXXXX是需要轉換為Json的對象。

後記

有了上面這個方法,就可以不管數據表或者通用類裡日期時間存儲的是上面格式,據此可做相應的轉換,滿足微信小城對JSON數據的需要。

相關焦點

  • 微信小程序開發系列四:微信小程序之控制器的初始化邏輯
    微信小程序開發系列教程這個教程的前兩篇文章,介紹了如何用下圖所示的微信開發者工具自動生成一個Hello World的微信小程序,並講解了這個自動生成的微信小程序的視圖開發原理。通常情況下這是微信小程序控制器執行的第一行代碼:這個應用實例的創建是在我們小程序控制器的訪問範圍之外由微信框架創建的,然後直接在getApp函數裡返回創建好的app實例:為什麼這個app實例如此重要,以至於放到控制器的第一行代碼來創建呢?
  • java日期和時間的格式化
    在編寫程序時,經常需要對日期進行格式化輸出。使用String類的format方法可以實現對日期和時間的格式化輸出。日期的格式化輸出Java提供了日期格式化轉換符用於支持日期的格式化輸出,格式化轉換符如下表所示: 案例1:使用API庫的Date類獲取當前日期和時間信息,並用format()方法將日期格式化為
  • 小程序入門簡介
    >一、培訓內容以實戰為主,需要自帶電腦,培訓時間為一天半,周日中午結束二、有高級語言程序設計基礎就行,有前端知識更好,沒有也行三、培訓後可以掌握小程序基礎開發四、授課老師是兩個騰訊微信技術骨幹,兩個小程序慕課主講老師,都是頂尖講師會議詳細通知下載地址(掃描二維碼也可以下載
  • 20個非常有用的Java程序片段
    6、把 Java util.Date 轉成 sql.Datejava.util.Date utilDate= new java.util.Date();  java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime());7、使用NIO進行快速的文件拷貝
  • 小程序物流快遞單號查詢接口對接指南
    對於開發者而言,小程序開發門檻相對較低,難度不及APP,能夠滿足簡單的基礎應用,適合生活服務類線下商鋪以及非剛需低頻應用的轉換,也比較適合初創公司創業階段用來「試錯」的產品,在開發成本、用戶體驗、運營方式、迭代更新方面小程序都很有優勢。
  • 18 個示例帶你掌握 Java 8 日期時間處理!
    Java處理日期、日曆和時間的方式一直為社區所詬病,將 java.util.Date設定為可變類型,以及SimpleDateFormat的非線程安全使其應用非常受限。新API基於ISO標準日曆系統,java.time包下的所有類都是不可變類型而且線程安全。
  • Java基礎教程:Java基礎知識之List接口
    List接口我們掌握了Collection接口的使用後,再來看看Collection接口中的子類,他們都具備那些特性呢?接下來,我們一起學習Collection中的常用幾個子類(java.util.List集合、java.util.Set集合)。
  • Jackson,最牛掰的 Java JSON 解析器
    Log4j 的時候,為了競爭,還推出了 java.util.logging,雖然最後也沒多少人用。Java 之所以牛逼,很大的功勞在於它的生態非常完備,JDK 沒有 JSON 庫,第三方類庫有啊,還挺不錯,比如說本篇的豬腳——Jackson,GitHub 上標星 6.1k,Spring Boot 的默認 JSON 解析器。
  • 輕課· Java|Java 日期時間
    java.util包提供了Date類來封裝當前的日期和時間。 Date類提供兩個構造函數來實例化Date對象。
  • 談談 Java 開發中的對象拷貝
    在Java開發工作中,有很多時候我們需要將不同的兩個對象實例進行屬性複製,從而基於源對象的屬性信息進行後續操作,而不改變源對象的屬性信息。
  • JAVA8——JAVA成長之路
    這方面好的例子是大量的方法被添加到java.util.Collection接口中去:stream(),parallelStream(),forEach(),removeIf(),……儘管默認方法非常強大,但是在使用默認方法時我們需要小心注意一個地方:在聲明一個默認方法前,請仔細思考是不是真的有必要使用默認方法,因為默認方法會帶給程序歧義,並且在複雜的繼承體系中容易產生編譯錯誤
  • java中定義日期格式的轉換符
    Hi,大家好久不見,今天我們在這裡給大家介紹一下關於Java的小知識,在Java中定義日期格式的轉換符,至於運用呢就不和大家做介紹了;接下來就給大家詳細介紹一下如何實現。那我們該如何創建使用呢?;import java.util.Locale;public class FormatTime {public static void main(String[] args) {// TODO Auto-generated method stub
  • Java中日期的幾種常見操作 ―― 取值、轉換、加減、比較
    日期取值 在舊版本 JDK 的時代,有不少代碼中日期取值利用了 java.util.Date 類,但是由於 Date 類不便於實現國際化,其實從 JDK1.1 開始,就更推薦使用 java.util.Calendar 類進行時間和日期方面的處理。這裡便不介紹 Date 類的操作,讓我們直奔主題吧,如何利用 Calendar 類取得現在的日期時間。
  • 【終極版】Java8 新特性全面介紹,強烈建議收藏
    ,實踐上java.lang.Runnable和java.util.concurrent.Callable是函數式接口的最佳例子!在舊版的 Java 中,日期時間 API 存在諸多問題,例如:非線程安全:java.util.Date 是非線程安全的,所有的日期類都是可變的,這是Java日期類最大的問題之一。
  • JAVA上百實例源碼以及開源項目
    ,我們應該通過主鍵來判斷刪除哪個數據實例……ejbCreate函數用於初始化一個EJB實例5個目標文件,演示Address EJB的實現,創建一個EJB測試客戶端,得到名字上下文,查詢jndi名,通過強制轉型得到Home接口,getInitialContext()函數返回一個經過初始化的上下文,用client的getHome()函數調用Home接口函數得到遠程接口的引用,用遠程接口的引用訪問
  • 一文告訴你Java日期時間API到底有多爛
    罪狀一:Date同時表示日期和時間java.util.Date被設計為日期 + 時間的結合體。java.util.Date的三個子類均位於java.sql包內,他們三是通過Javadoc描述來進行分工的:java.sql.Timestamp:表示日期 + 時間這麼一來,似乎可以「理解」java.sql.Date為何重寫父類的getHours()方法改為拋出IllegalArgumentException
  • 程式設計師都應該了解的一種數據格式之 JSON
    以上數據形式圖片來源JSON官方文檔:http://www.json.org/json-zh.htmlJSON使用場景介紹完JSON的數據格式,那我們來看看JSON在企業中使用的比較多的場景。接口返回數據和序列化。
  • 怎樣用微信小程序開發一個簡單的用戶註冊功能?
    整體的功能結構製作前臺表單頁面1.新建register文件夾和register.js,register.json,register.wxml,register.wxss文件3.修改註冊頁面配置文件,添加頭部標題顯示「用戶註冊」修改之後會在左邊模擬器的頭部顯示「用戶註冊」4.開始製作表單頁面,打開register.wxml,編寫代碼效果:5.給表單中的出生日期和所在地區添加動態效果
  • java常用幾大類庫
    而數組的長度是固定的,無法適應數據變化的需求。為了解決這個問題,Java提供了另一個容器 java.util.ArrayList 集合類,讓我們可以更便捷的存儲和操作對象數據。4.2 什麼是ArrayList類java.util.ArrayList 是大小可變的數組的實現,存儲在內的數據稱為元素。此類提供一些方法來操作內部存儲的元素。 ArrayList 中可不斷添加元素,其大小也自動增長。
  • 吐槽微信小程序好物圈插件遇到的問題
    前言大家都希望自己的微信小程序取得更多的曝光,也就是引流,因此,最近覺得將微信小程序商品和微信圈子打通,通過近幾天的研究發現,微信推出了一款好物推薦插件,那麼在接入中會遇到哪些問題呢?微信小程序好物圈插件問題1.審核問題申請好物推薦插件倒是很簡單,點一下就申請確認中了,可是這個審核足足過了有一周,也就是,這個效率太慢,幹什麼都要審核,而且審核不能在一兩個小時內解決,給人添堵了。