# Java时间格式化 yyyy-MM-dd和yyyy-MM-dd HH:mm:ss
yyyy和YYYY的区别:“YYYY”表示的是Week year,就是这天所在的周所属的年,那2022年的第一周按照这个定义就是2021年12月27日至2021年1月2日这7天,按照Week year,2020年12月27日也就算在2022年了。 格式化的时候,使用yyyy,不要使用YYYY,除非有特殊的业务需求。
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.DateFormatUtils;
import org.apache.commons.lang3.time.DateUtils;
import java.util.Calendar;
import java.util.Date;
import java.util.Locale;
@Slf4j
public class DateUtil {
//格式化类型到时分秒(HH是24小时制)
public static final String DATETIME = "yyyy-MM-dd HH:mm:ss";
//格式类型到天
public static final String DATE1 = "yyyy-MM-dd";
/**
* 按(yyyy-MM-dd)进行格式化
* @param date
* @return
*/
public static String formatDate(Date date) {
return formatDate(date, DATE1);
}
/**
* 按(yyyy-MM-dd HH:mm:ss)进行格式化
* @param date
* @return
*/
public static String formatDateTime(Date date) {
return formatDate(date, DATETIME);
}
/**
* DateFormatUtils是org.apache.commons:commons-lang3.3.9下的工具类
* @param date
* @param pattern
* @return
*/
public static String formatDate(Date date, String pattern) {
if (date == null) {
return null;
}
return DateFormatUtils.format(date, pattern, Locale.CHINA);
}
/**
* 使用SimpleDateFormat进行格式化
* @param date
* @param pattern
* @return
*/
public static String formatDate2(Date date, String pattern) {
if (date == null) {
return null;
}
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
return sdf.format(date);
}
/**
* 获取days后的时间
* @param date
* @param days
* @return
*/
public static Date addDays(Date date, Integer days) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.DAY_OF_MONTH, days);
return calendar.getTime();
}
/**
* 获取两个时间之间的天的列表
* @param startDate
* @param endDate
* @return
*/
private List<String> getDateList(Date startDate,Date endDate){
List<String> rlist = new ArrayList<>();
Date temp = startDate;
while (true){
temp = DateUtil.addDays(temp,1);
if(temp.after(endDate)){
break;
}else{
rlist.add(DateUtil.formatDate(temp));
}
}
return rlist;
}
}
引入工具类
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.7</version>
</dependency>