java解决“字符串”和“带格式日期数字”之间的匹配问题

来源:互联网 发布:决战刹马镇 知乎 编辑:程序博客网 时间:2024/05/16 09:48




logger.debug("=== TrafficSituationDaoImpl === findCasualtiesCount === begin");

AccidentAnalysisVO accidentAnalysisVO = new AccidentAnalysisVO();


try {
Query query = em.createNativeQuery(sqlString);
List<Object> objectList = query.getResultList();
for (int i = 0; i < objectList.size(); i++) {
Object[] obj = (Object[]) objectList.get(i);


Calendar calendar = Calendar.getInstance();
String month;


String year = String.valueOf(calendar.get(Calendar.YEAR));


if (calendar.get(Calendar.MONTH) < 10) {   //2017-06   oracle数据库中日期的格式
month = year + "-" + "0" + String.valueOf(calendar.get(Calendar.MONTH) + 1);
} else {
month = year + "-" + String.valueOf(calendar.get(Calendar.MONTH) + 1);
}


String day = year + "-" + String.valueOf(calendar.get(Calendar.MONTH) + 1) + "-"
+ String.valueOf(calendar.get(Calendar.DATE));   //2017-06-21


Map<String, Integer> map = new HashMap<String, Integer>();  //实现 字符串 和 数值 之间的转换
map.put(year, 1);
map.put(month, 2);
map.put(day, 3);


switch (map.get(obj[0].toString())) {
case 1: // 本年
accidentAnalysisVO.setCasualtiesNumberYear(((BigDecimal) obj[1]).add((BigDecimal) obj[2])); 
break;
case 2: // 本月
accidentAnalysisVO.setCasualtiesNumberMonth(((BigDecimal) obj[1]).add((BigDecimal) obj[2]));
break;
case 3: // 本日
accidentAnalysisVO.setCasualtiesNumberDay(((BigDecimal) obj[1]).add((BigDecimal) obj[2]));
break;
default:
System.out.println("正在查询,请稍候!");
break;
}
}
} catch (Exception e) {
e.printStackTrace();
throw new PoliceSituationException("方法执行错误:findCasualtiesCount方法执行失败");
}
logger.debug("=== TrafficSituationDaoImpl === findCasualtiesCount === end");









阅读全文
0 0
原创粉丝点击