如何将solr日期显示为用户格式

时间:2011-12-26 07:17:58

标签: java solr

在solr中,我有以下记录,列名是userdate,firstname和lastname

2011-12-25T15:04:36.73Z abc xyz                          
2011-12-26T15:04:36.73Z yyy bbb                      
2011-12-26T15:04:36.73Z test one

在UI中,我希望以下列方式显示该用户日期,而不是显示日期和时间(根据用户时区),             1.从solr获取日期时,它仅以UTC格式提供。             2.首先将隐式UTC格式转换为用户时区,然后我想以下列方式显示用户日期

1 day ago abc xyz              
3 hour ago yyy yyy                              
5 second ago test one

先谢谢

3 个答案:

答案 0 :(得分:1)

您可以尝试使用Joda time API来解析日期,并使用Period类方法来区分两个日期。

答案 1 :(得分:1)

试试这个:     1)获取当前时间与Solr得到的时间之间的间隔时间,     2)将此delta值转换为不同的时间单位。

和TimeUnit将有很多帮助

    TimeUnit.SECONDS.toSeconds(long duration);
    TimeUnit.SECONDS.toMinutes(long duration);
    TimeUnit.SECONDS.toHours(long duration);
    TimeUnit.SECONDS.toDays(long duration);

按顺序尝试上面的代码,直到得到大于零的值,然后知道时间跨度和时间单位。

答案 2 :(得分:0)

var publish = new Date("2016-11-17T09:22:24Z");
alert(publish);