我於
List dataList = dataDao.getAll();
String.valueOf(dataList.get(0).getStime())
撈出來的資料如下
=dataList:Thu Jun 13 10:28:11 CST 2019
我想在Action裡面,把 dataList 跟 Data data 的資料都改成 YYYY-MM-DD
並且dataList得去除重複的日期
HashMap<String, Integer> map = new HashMap
for(Data data: dataList){
Date Stime = data.getStime();
String str = String.valueOf(Stime);
map.put(str, 0);
}
我想試著改Data.java 裡面的格式,但我想不到方法
@Table(name = "Data")
@XmlRootElement
@NamedQueries({
@NamedQuery(name = "Data.findAll", query = "SELECT e FROM Data e"),
@NamedQuery(name = "Data.findById", query = "SELECT e FROM Data e WHERE e.id = :id"),
@NamedQuery(name = "Data.findByStime", query = "SELECT e FROM Data e WHERE e.stime = :stime"),
肯請各位賜教了
如果透過資料庫原生的語法 (以Oracle來說, trunc跟distinct)可以在資料抽出來之前就整理完你要的資訊
如果是透過Java, 須先將日期轉成文字格式, 再去除重覆, 另外, Set的資料結構會更合適; 如果你的環境版本在Java8之後, 應該可以簡單的對List操作, 透過stream, map, discint, collect的步驟完成你的需求
Jave date format link: Java date format
(iPadㄏㄞˊㄕˋㄉㄚˇㄅㄨˋㄔㄨㄓㄨㄥㄨㄣˊ⋯)