https://blog.csdn.net/zhangcongyi420/article/details/88558550
java获取指定倒退或向前的时间工具类:
//获取当前时间向后推一天
public static String getDayAfterOne(){
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
c.add(Calendar.DAY_OF_MONTH, 1);
return sf.format(c.getTime());
}
//获取给定时间向后推一天
public static String getSpecialDayAdd(String date){
SimpleDateFormat d = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
try{
c.setTime(d.parse(date));
c.add(Calendar.DAY_OF_MONTH, 1);
String t = d.format(c.getTime());
System.out.println(t);
return t;
}catch (Exception e){
e.printStackTrace();
}
return null;
}
/**
* 获取当前时间向前推一天
* @return
*/
public static String getNowDayBeforeOne(){
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
c.add(Calendar.DAY_OF_MONTH, -1);
return sf.format(c.getTime());
}
/**
* 获取当前时间向前推7天
* @return
*/
public static String getNowDayBefore7(){
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
c.add(Calendar.DAY_OF_MONTH, -7);
return sf.format(c.getTime());
}
/**
* 获取指定时间向前推一天
* @return
*/
public static String getSpecialDayBeforeOne(String timestr){
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
try{
c.setTime(sf.parse(timestr));
c.add(Calendar.DAY_OF_MONTH, -1);
return sf.format(c.getTime());
}catch (Exception e){
e.printStackTrace();
}
return null;
}
/**
* 获取指定区间内的时间
* @param queryParams
* @return
*/
public Map getSpecialDuringTime(Map queryParams){
Map map = new HashMap();
String tartTime = null;
String endTime = null;
if(queryParams.get("startTime") == null || "".equals(queryParams.get("startTime"))){
//如果前端没有传开始时间,则默认查7天时间
tartTime = getNowDayBefore7();
map.put("startTime",tartTime);
}else{
//给定时间向前推一天
tartTime = getSpecialDayBeforeOne(queryParams.get("startTime").toString());
map.put("startTime",tartTime);
}
//结束时间
if(queryParams.get("endTime") == null || "".equals(queryParams.get("endTime"))){
// endTime = new SimpleDateFormat("yyyy-MM-dd-hh.mm.ss").format(new Date());
//如果前端没有传截至时间
endTime = getDayAfterOne();
map.put("endTime",endTime);
}else{
//如果传入了,则查询指定时间后推一天
//endTime = queryParams.get("endTime").toString();
endTime = getSpecialDayAdd(queryParams.get("endTime").toString());
map.put("endTime",endTime);
}
return map;
}