我创建了以下方法,它返回一个HashMap<Date, List<Date>>其中键是一个Date对象,并且该值是一个List的Date对象。该方法接受ListoftimeStamps并将其按天分组。然后,它返回上述HashMap构造中的那些分组时间戳。 public class GroupDatesByDay { HashMap<Date, List<Date>> groupedUserLogins = new HashMap<Date, List<Date>>(); Calendar cal = Calendar.getInstance(); public HashMap<Date, List<Date>> parseTimeStamps(List<Date> timeStamps) { DateFormat dateFormat = new SimpleDateFormat("HH:mm:ss.SSS", Locale.US); List<Date> timeStamps = new ArrayList<Date>(); for (Date ts : timeStamps) { cal.setTime(ts); cal.set(cal.HOUR_OF_DAY, 0); cal.set(cal.MINUTE, 0); cal.set(cal.SECOND, 0); cal.set(cal.MILLISECOND, 0); if (!groupedUserLogins.containsKey(cal.getTime())) { groupedUserLogins.put(cal.getTime(), new ArrayList<Date>()); } groupedUserLogins.get(cal.getTime()).add(ts); } keySet = groupedUserLogins.keySet(); keyList.addAll(keySet); return groupedUserLogins; }}HashMap中的数据应如下所示:Key List<Date> 2018-07-11 2018-07-11 08:14:08.540000 2018-07-11 10:46:23.575000 2018-07-12 2018-07-12 12:51:48.928000 2018-07-12 13:09:00.701000 2018-07-12 16:04:45.890000 2018-07-13 2018-07-13 14:14:17.461000 在我的XHTML中,我想每天在dataTable和RowExpansion中显示此数据,以查看各个时间戳。我已经编写了以下XHTML。如您所见,userLogins这就是我的Java方法返回的内容。我正在对此进行迭代dataTable,但是我不知道如何以上述方式在其中显示值。<p:dataTable var="userLogin" value="#{userEdit.userLogins}"class="DataTable"> <p:column headerText=" Recent Logins"> <h:outputLabel value="#{userLogin}"> </h:outputLabel> </p:column></p:dataTable>
添加回答
举报
0/150
提交
取消