Skip to content

Commit

Permalink
时间格式化使用commons-lang3
Browse files Browse the repository at this point in the history
  • Loading branch information
ilaotan committed Jul 21, 2017
1 parent f92d435 commit ec94018
Show file tree
Hide file tree
Showing 2 changed files with 63 additions and 79 deletions.
6 changes: 6 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
<druid.version>1.0.28</druid.version>
<beetl.version>2.7.15</beetl.version>
<swagger.version>2.2.2</swagger.version>
<commons-lang3.version>3.6</commons-lang3.version>
</properties>

<dependencies>
Expand Down Expand Up @@ -174,6 +175,11 @@
<artifactId>springfox-swagger-ui</artifactId>
<version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>${commons-lang3.version}</version>
</dependency>

</dependencies>

Expand Down
136 changes: 57 additions & 79 deletions src/main/java/com/stylefeng/guns/core/util/DateUtil.java
Original file line number Diff line number Diff line change
Expand Up @@ -22,108 +22,111 @@
import java.util.Calendar;
import java.util.Date;

public class DateUtil {
private final static SimpleDateFormat sdfYear = new SimpleDateFormat("yyyy");

private final static SimpleDateFormat sdfDay = new SimpleDateFormat("yyyy-MM-dd");
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.DateFormatUtils;
import org.apache.commons.lang3.time.DateUtils;

private final static SimpleDateFormat sdfDays = new SimpleDateFormat("yyyyMMdd");

private final static SimpleDateFormat sdfTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

private final static SimpleDateFormat sdfmsTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");

private final static SimpleDateFormat allTime = new SimpleDateFormat("yyyyMMddHHmmss");
public class DateUtil {


/**
* 获取YYYY格式
*
*
* @return
*/
public static String getYear() {
return sdfYear.format(new Date());
return formatDate(new Date(), "yyyy");
}

/**
* 获取YYYY格式
*
*
* @return
*/
public static String getYear(Date date) {
return sdfYear.format(date);
return formatDate(date, "yyyy");
}

/**
* 获取YYYY-MM-DD格式
*
*
* @return
*/
public static String getDay() {
return sdfDay.format(new Date());
return formatDate(new Date(), "yyyy-MM-dd");
}

/**
* 获取YYYY-MM-DD格式
*
*
* @return
*/
public static String getDay(Date date) {
return sdfDay.format(date);
return formatDate(date, "yyyy-MM-dd");
}

/**
* 获取YYYYMMDD格式
*
*
* @return
*/
public static String getDays() {
return sdfDays.format(new Date());
return formatDate(new Date(), "yyyyMMdd");
}

/**
* 获取YYYYMMDD格式
*
*
* @return
*/
public static String getDays(Date date) {
return sdfDays.format(date);
return formatDate(date, "yyyyMMdd");
}

/**
* 获取YYYY-MM-DD HH:mm:ss格式
*
*
* @return
*/
public static String getTime() {
return sdfTime.format(new Date());
return formatDate(new Date(), "yyyy-MM-dd HH:mm:ss");
}

/**
* 获取YYYY-MM-DD HH:mm:ss.SSS格式
*
*
* @return
*/
public static String getMsTime() {
return sdfmsTime.format(new Date());
return formatDate(new Date(), "yyyy-MM-dd HH:mm:ss.SSS");
}

/**
* 获取YYYYMMDDHHmmss格式
*
*
* @return
*/
public static String getAllTime() {
return allTime.format(new Date());
return formatDate(new Date(), "yyyyMMddHHmmss");
}

/**
* 获取YYYY-MM-DD HH:mm:ss格式
*
*
* @return
*/
public static String getTime(Date date) {
return sdfTime.format(date);
return formatDate(date, "yyyy-MM-dd HH:mm:ss");
}

public static String formatDate(Date date, String pattern) {
String formatDate = null;
if (StringUtils.isNotBlank(pattern)) {
formatDate = DateFormatUtils.format(date, pattern);
} else {
formatDate = DateFormatUtils.format(date, "yyyy-MM-dd");
}
return formatDate;
}

/**
Expand All @@ -144,41 +147,30 @@ public static boolean compareDate(String s, String e) {

/**
* 格式化日期
*
*
* @return
*/
public static Date parseDate(String date) {
try {
return sdfDay.parse(date);
} catch (ParseException e) {
e.printStackTrace();
return null;
}
return parse(date,"yyyy-MM-dd");
}

/**
* 格式化日期
*
*
* @return
*/
public static Date parseTime(String date) {
try {
return sdfTime.parse(date);
} catch (ParseException e) {
e.printStackTrace();
return null;
}
return parse(date,"yyyy-MM-dd HH:mm:ss");
}

/**
* 格式化日期
*
*
* @return
*/
public static Date parse(String date, String pattern) {
DateFormat fmt = new SimpleDateFormat(pattern);
try {
return fmt.parse(date);
return DateUtils.parseDate(date,pattern);
} catch (ParseException e) {
e.printStackTrace();
return null;
Expand All @@ -187,53 +179,39 @@ public static Date parse(String date, String pattern) {

/**
* 格式化日期
*
*
* @return
*/
public static String format(Date date, String pattern) {
DateFormat fmt = new SimpleDateFormat(pattern);
return fmt.format(date);
return DateFormatUtils.format(date, pattern);
}

/**
* 把日期转换为Timestamp
*
*
* @param date
* @return
*/
public static Timestamp format(Date date) {
return new java.sql.Timestamp(date.getTime());
return new Timestamp(date.getTime());
}

/**
* 校验日期是否合法
*
*
* @return
*/
public static boolean isValidDate(String s) {
try {
sdfTime.parse(s);
return true;
} catch (Exception e) {
// 如果throw java.text.ParseException或者NullPointerException,就说明格式不对
return false;
}
return parse(s, "yyyy-MM-dd HH:mm:ss") != null;
}

/**
* 校验日期是否合法
*
*
* @return
*/
public static boolean isValidDate(String s, String pattern) {
DateFormat fmt = new SimpleDateFormat(pattern);
try {
fmt.parse(s);
return true;
} catch (Exception e) {
// 如果throw java.text.ParseException或者NullPointerException,就说明格式不对
return false;
}
return parse(s, pattern) != null;
}

public static int getDiffYear(String startTime, String endTime) {
Expand All @@ -250,18 +228,18 @@ public static int getDiffYear(String startTime, String endTime) {

/**
* <li>功能描述:时间相减得到天数
*
*
* @param beginDateStr
* @param endDateStr
* @return long
* @author Administrator
*/
public static long getDaySub(String beginDateStr, String endDateStr) {
long day = 0;
java.text.SimpleDateFormat format = new java.text.SimpleDateFormat(
SimpleDateFormat format = new SimpleDateFormat(
"yyyy-MM-dd");
java.util.Date beginDate = null;
java.util.Date endDate = null;
Date beginDate = null;
Date endDate = null;

try {
beginDate = format.parse(beginDateStr);
Expand All @@ -277,7 +255,7 @@ public static long getDaySub(String beginDateStr, String endDateStr) {

/**
* 得到n天之后的日期
*
*
* @param days
* @return
*/
Expand All @@ -296,7 +274,7 @@ public static String getAfterDayDate(String days) {

/**
* 得到n天之后是周几
*
*
* @param days
* @return
*/
Expand Down Expand Up @@ -325,7 +303,7 @@ public static String getAfterDayWeek(String days) {
// return Func.toStr(value);
// }
// }

public static void main(String[] args) {
System.out.println(getTime(new Date()));
System.out.println(getAfterDayWeek("3"));
Expand Down

0 comments on commit ec94018

Please sign in to comment.