我有一些表名稱作爲我的方法的I/P參數。我需要獲取creationDate(日期),爲每個表計數並將其放入合併列表中)如何根據日期對Java中的列表<日期,字符串>
然後根據creationDate對列表進行排序。
這裏是方法:
public String getData(List tablename){
Lifecycle.beginCall();
EntityManager mgr = (EntityManager) Component.getInstance("entityManager");
List data = new ArrayList();
if (!tablename.isEmpty())
{
Iterator itr = tablename.iterator();
while(itr.hasNext())
{
String element = itr.next().toString();
Query q = mgr.createQuery("select to_date(s.creationDate), count(s)" +
" from " + element + " s" +
" group by to_date(creationDate)" +
" order by to_date(creationDate)");
List dataTemp = q.getResultList();
data.addAll(dataTemp);
}
}
}
現在我有表數據,例如:這裏
({["Jan 3, 2013 12:00:00 AM",10],
["Feb 3, 2013 12:00:00 AM",10],
["Jan 1, 2013 12:00:00 AM",10],
..........})
挑戰賽,我想這個清單根據日期
您是否試過'Collections.sort'? – 2013-02-23 14:41:52
你可以使用命令通過sql命令。看到這個:http://stackoverflow.com/questions/3616224/jpql-order-by-clause-with-parameter – Hassan 2013-02-23 14:46:19
與您的問題無關,但重要的是:使用參數化查詢,以防止SQL注入 – Joost 2013-02-23 15:06:56