當前時間與數據庫表的時間根據分鐘或小時顯示不一樣的數據

產品要求如方法描述:java

    /**
     * @Author: ***
     * @Description:
     *  ①提交時間一分鐘內定義爲「剛剛」
     *  ②提交時間爲1分鐘到24小時,定義爲「2分鐘前」-「59分鐘前」,1小時前」-「23小時前」
     *  ③提交時間爲24小時及之外,定義爲提交的日期,如「2017-12-19」
     * @param: [date]
     * @return: java.lang.String
     * @Date: 14:48 2018/8/31
     */
    public static String getSubmissionTime(Date date) {

        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        String result = "";
        long time = date.getTime();
        long currentTime = System.currentTimeMillis();
        //當前時間與數據庫時間的時間戳差值
        long changeTime = currentTime - time;

        if(changeTime < 60000){
            result = "剛剛";
        }else if(changeTime >= 60000 && changeTime < 3600000){
            result = changeTime/60000 +"分鐘前";
        }else if(changeTime >= 3600000 && changeTime < 86400000){
            result = changeTime/3600000+"小時前";
        }else if(changeTime >= 86400000){
            result = sdf.format(date);
        }
        return result;
    }
相關文章
相關標籤/搜索