当前时间与数据库表的时间根据分钟或小时显示不同的数据

产品要求如方法描述:

    /**
     * @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;
    }

 

posted @ 2018-08-31 15:46  龙芳伟  阅读(418)  评论(0编辑  收藏  举报