1. 程式人生 > >My97DatePicker顯示日期的奇葩問題(字尾.0)

My97DatePicker顯示日期的奇葩問題(字尾.0)

問題描述

專案執行環境:
資料庫=>mysql5.0
jdk=>jdk1.8
伺服器=>tomcat8.0
之前做專案就遇到過這個問題,忘記記在哪裡了,這次做專案又遇到了這個奇葩問題。因為My97DatePicker中的日期回顯的時候不能直接用
Date型別的資料,所以我們就要先把Date型別的資料轉換成String型別的,然後再傳遞到前臺去展示。剛開始轉換的程式碼如下

staff.setAccessionDateString(staff.getAccessionDate()==null?null:staff.getAccessionDate().toString());
staff.setDimissionDateString(staff.getDimissionDate()==null?null:staff.getDimissionDate().toString());

前臺展示時候發現如下奇葩情況,最後會多一個.0的字尾
這裡寫圖片描述

問題解決方案

  1. 後來經過除錯發現如下圖中紅圈標示的,在Date型別toString後就變成了帶字尾.0的。
    這裡寫圖片描述

  2. 緊接著再往前除錯,發現Date型別的變數值已經也是帶.0字尾的了,如下圖

這裡寫圖片描述
3. 最後把sql拷貝出來執行了一下,發現格式是正常的如下圖

這裡寫圖片描述
經過以上除錯分析,應該是在從資料庫查詢出來之後對映的時候發生了變化。
解決方案一:


就是在Date轉換成String的時候直接用toString方法,我們用如下程式碼進行轉換。

staff.setAccessionDateString(staff.getAccessionDate()==null?null:DateUtil.format(staff.getAccessionDate(), null));
            staff.setDimissionDateString(staff.getDimissionDate()==null?null:DateUtil.format(staff.getDimissionDate(), null));

上述程式碼中的DateUtil的format方法具體實現如下

 public static String format(Date date, String... pattern) {
        String myPattern = "yyyy-MM-dd HH:mm:ss";

        if (date == null) {
            return null;
        }

        if (pattern != null && pattern.length > 0) {
            myPattern = pattern[0];
        }

        SimpleDateFormat df = new SimpleDateFormat(myPattern);
        return df.format(date);
    }

經過這麼改造後發現這個奇葩的字尾.0就神奇的消失了。
目前暫時發現這一種解決方案,其他解決方案歡迎各位同仁來補充…..

相關推薦

My97DatePicker顯示日期奇葩問題字尾.0

問題描述 專案執行環境: 資料庫=>mysql5.0 jdk=>jdk1.8 伺服器=>tomcat8.0 之前做專案就遇到過這個問題,忘記記在哪裡了,這次做專案又遇到了這個

My97DatePicker顯示預設值當前日期的前一天

$(function(){ setdate(); }); //日期框新增預設值 function setdate(){ var sd=new Date(); sd.set

mysql按日期分組group by查詢統計的時候,沒有數據補0的解決辦法

details map對象 有一個 end creat 對象 結果 插入 數據返回 轉載自:http://blog.csdn.net/jie11447416/article/details/50887888 1、案例中的數據結構和數據如下 2、在沒有解決的時候,是這樣的

GlobeImposter3.0家族,4444系列字尾勒索病毒資料恢復

(GlobeImposter3.0)家族變體:.ox4444字尾勒索病毒 .help4444字尾勒索病毒 .all4444字尾勒索病毒 .china4444字尾勒索病毒 .monkey4444字尾勒索病毒 .snake4444字尾勒索病毒 .Rat4444字尾勒索病毒 .Tiger4444字尾勒索病毒 .Ra

.Ox4444勒索病毒刪除+恢復資料GlobeImposter3.0所有*4444字尾檔案

該.Ox4444勒索病毒是(GlobeImposter3.0)地球冒名頂替者的變體。加密後它對所有檔案的副檔名為.Ox4444。加密後,贖金票據會顯示如何支付贖金並據稱恢復您的檔案的說明。 (GlobeImposter3.0)家族近期還有其他的變體:.ox4444字尾勒索病

mysql按日期分組group by查詢統計的時候,沒有資料補0的解決辦法

寫部落格真實個費時費力的差事,好佩服那些部落格閱讀幾十上百萬的人。今天研究了半天按照日期分組統計,沒有資料就為空了,我要讓他顯示0呀。想了辦法,都沒有找到一個好的,解決方案,然後用了一個很low的方法實現了,還是把它記錄下來。方法是用於MySQL,與開發語言無關。 1、案例中的資料結構和資料如下 2、

各種格式時間/日期顯示及轉換C/C++

程式設計過程中經常需要各種格式的時間形式,比如整型時間、年月日形式的時間等,下面對各種格式的時間及操作進行簡單的總結: 1、獲取當前時間的整型數值 time_t ttime; ttime = time(NULL); // 秒數 struct timeb

mysql按日期分組group by查詢統計的時候,沒有資料補0的解決辦法。

寫部落格真實個費時費力的差事,好佩服那些部落格閱讀幾十上百萬的人。今天研究了半天按照日期分組統計,沒有資料就為空了,我要讓他顯示0呀。想了辦法,都沒有找到一個好的,解決方案,然後用了一個很low的

針對敲詐病毒WanaCrypt0r2.0的應對方案

補丁 處理 應對 敲詐病毒 wanacrypt0r 2.0 病毒背景 5月12日起,Onion、WNCRY兩類敲詐者病毒變種在全國乃至全世界大範圍內出現爆發態勢,中國大陸大量教育網用戶和企業用戶中招。 與以往不同的是,這次的新變種病毒添加了NS

javaScript顯示和隱藏display屬性

javascript<!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><title>display</t

笨辦法學Python習題0

text python rmi rect count 學python 一個 生成 adc 一、學著使用Terminal創建一個目錄 mkdir —— make directory 創建目錄 用法:$ mkdir <directory> 示例:   1、$ mk

jQuery 價格顯示 前面位數與後面兩位顯示不同樣式一大一小

20px his 分享 highlight img oct es2017 size rip <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8">

LinuxcentOS7.0虛擬機環境下安裝JDK1.8

rep csdn 完成 安裝jdk 1.7 頂部 安裝包 centos7 tps 閱讀目錄 1.檢查系統是否安裝了JDK 2.準備工作 3.配置環境變量 4.驗證是否安裝成功 回到頂部 1.檢查系統是否安裝了JDK   1.打開SecureCRT終端,輸入:jav

pythonDjango2.0 安裝

pat 安裝環境 code int 分享圖片 -i version 刪除 直接 前言 哇 ,python 是真的強大,看看如何安裝的python: 下載咯 在python的官網下載python對應版本:https://www.python.org/download

vue-router2.0之什麼是路由以及使用步驟筆記

前端路由: 在web開發中,路由是指根據url分配到對應的處理程式 vue-router: 通過管理url實現url和元件的對應和通過url進行元件之間的切換 可以做單頁面應用(SPA):載入單個HTML頁面,並在使用者與應用程式互動時動態更新該頁面 vue-router的使

python3.x使用numpy,pandas時如何取消科學計數法,顯示完整輸出無省略號

部落格1031 用python進行資料分析時,檢視資料,經常發生資料被自動顯示成科學記數法的模式,或者多行多列資料只顯示前後幾行幾列,中間都是省略號的情形。 彙總了下解決辦法,記錄: 環境如下: python version == 3.6 numpy version == 1.11.3

Java 8時間日期APILocalDate等的序列化應用

一 點睛 LocalDate、LocalTime、LocalDateTime是Java 8開始提供的時間日期API,主要用來優化Java 8以前對於時間日期的處理操作。然而,我們在使用Spring Boot,往往會發現使用請求引數或返回結果中有LocalDate、LocalTime

Musical Theme字尾自動機

Musical Theme Time Limit: 1000MS Memory Limit: 30000K 題目大意: 給定一個串,找出滿足條件最長子串: 1,長度大於等於5 2,至少出現兩次 3,至少有兩個出現位置不重疊 子串不一定要嚴格相等,兩兩差值相等即可。

[TJOI2015]弦論字尾自動機

3998: [TJOI2015]弦論 Description 對於一個給定長度為N的字串,求它的第K小子串是什麼。 Input 第一行是一個僅由小寫英文字母構成的字串S 第二行為兩個整數T和K,T為0則表示不同位置的相同子串算作一個。T=1則表示不同位置的相同子串算作多

Windows遍歷全盤所搜檔案,並通過多執行緒顯示搜尋進度C++/C

程式設計軟體,系統 軟體:VS2017 工程屬性:MFC對話方塊(其他工程屬性稍作修改也適用) 系統:windows10家庭版 主要思想 1、利用CFileFind實現查詢檔案 2、利用遞迴實現全盤搜尋 3、多執行緒實現父對話方塊搜尋檔案時,子對話方塊顯示搜尋進度 軟體執行效