- 浏览: 14667 次
- 性别:
- 来自: 广州
最新评论
package com.dayatang.utils;
import java.security.InvalidParameterException;
import java.text.ParseException;
import java.util.Calendar;
import java.util.Date;
public class DateUtils {
private static final long MILLIS_IN_A_SECOND = 1000;
private static final long SECONDS_IN_A_MINUTE = 60;
private static final long MINUTES_IN_AN_HOUR = 60;
private static final long HOURS_IN_A_DAY = 24;
private static final int DAYS_IN_A_WEEK = 7;
private static final int MONTHS_IN_A_YEAR = 12;
//private static final int[] daysInMonth = new int[] { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
/**
* 最小日期,设定为1000年1月1日
*/
public static final Date MIN_DATE = date(1000, 1, 1);
/**
* 最大日期,设定为8888年1月1日
*/
public static final Date MAX_DATE = date(8888, 1, 1);
/**
* 根据年月日构建日期对象。注意月份是从1开始计数的,即month为1代表1月份。
* @param year 年
* @param month 月。注意1代表1月份,依此类推。
* @param day 日
* @return
*/
public static Date date(int year, int month, int date) {
Calendar calendar = Calendar.getInstance();
calendar.set(year, month - 1, date, 0, 0, 0);
calendar.set(Calendar.MILLISECOND, 0);
return calendar.getTime();
}
/**
* 计算两个日期(不包括时间)之间相差的周年数
*
* @param date1
* @param date2
* @return
*/
public static int getYearDiff(Date date1, Date date2) {
if (date1 == null || date2 == null) {
throw new InvalidParameterException(
"date1 and date2 cannot be null!");
}
if (date1.after(date2)) {
throw new InvalidParameterException("date1 cannot be after date2!");
}
Calendar calendar = Calendar.getInstance();
calendar.setTime(date1);
int year1 = calendar.get(Calendar.YEAR);
int month1 = calendar.get(Calendar.MONTH);
int day1 = calendar.get(Calendar.DATE);
calendar.setTime(date2);
int year2 = calendar.get(Calendar.YEAR);
int month2 = calendar.get(Calendar.MONTH);
int day2 = calendar.get(Calendar.DATE);
int result = year2 - year1;
if (month2 < month1) {
result--;
} else if (month2 == month1 && day2 < day1) {
result--;
}
return result;
}
/**
* 计算两个日期(不包括时间)之间相差的整月数
*
* @param date1
* @param date2
* @return
*/
public static int getMonthDiff(Date date1, Date date2) {
if (date1 == null || date2 == null) {
throw new InvalidParameterException(
"date1 and date2 cannot be null!");
}
if (date1.after(date2)) {
throw new InvalidParameterException("date1 cannot be after date2!");
}
Calendar calendar = Calendar.getInstance();
calendar.setTime(date1);
int year1 = calendar.get(Calendar.YEAR);
int month1 = calendar.get(Calendar.MONTH);
int day1 = calendar.get(Calendar.DATE);
calendar.setTime(date2);
int year2 = calendar.get(Calendar.YEAR);
int month2 = calendar.get(Calendar.MONTH);
int day2 = calendar.get(Calendar.DATE);
int months = 0;
if (day2 >= day1) {
months = month2 - month1;
} else {
months = month2 - month1 - 1;
}
return (year2 - year1) * MONTHS_IN_A_YEAR + months;
}
/**
* 统计两个日期之间包含的天数。包含date1,但不包含date2
*
* @param date1
* @param date2
* @return
*/
public static int getDayDiff(Date date1, Date date2) {
if (date1 == null || date2 == null) {
throw new InvalidParameterException(
"date1 and date2 cannot be null!");
}
Date startDate = org.apache.commons.lang3.time.DateUtils.truncate(
date1, Calendar.DATE);
Date endDate = org.apache.commons.lang3.time.DateUtils.truncate(date2,
Calendar.DATE);
if (startDate.after(endDate)) {
throw new InvalidParameterException("date1 cannot be after date2!");
}
long millSecondsInOneDay = HOURS_IN_A_DAY * MINUTES_IN_AN_HOUR
* SECONDS_IN_A_MINUTE * MILLIS_IN_A_SECOND;
return (int) ((endDate.getTime() - startDate.getTime()) / millSecondsInOneDay);
}
/**
* 计算time2比time1晚多少分钟,忽略日期部分
*
* @param time1
* @param time2
* @return
*/
public static int getMinuteDiffByTime(Date time1, Date time2) {
long startMil = 0;
long endMil = 0;
Calendar calendar = Calendar.getInstance();
calendar.setTime(time1);
calendar.set(1900, 1, 1);
startMil = calendar.getTimeInMillis();
calendar.setTime(time2);
calendar.set(1900, 1, 1);
endMil = calendar.getTimeInMillis();
return (int) ((endMil - startMil) / MILLIS_IN_A_SECOND / SECONDS_IN_A_MINUTE);
}
/**
* 计算指定日期的前一天
*
* @param date
* @return
*/
public static Date getPrevDay(Date date) {
return org.apache.commons.lang3.time.DateUtils.addDays(date, -1);
}
/**
* 计算指定日期的后一天
*
* @param date
* @return
*/
public static Date getNextDay(Date date) {
return org.apache.commons.lang3.time.DateUtils.addDays(date, 1);
}
/**
* 判断date1是否在date2之后,忽略时间部分
*
* @param date1
* @param date2
* @return
*/
public static boolean isDateAfter(Date date1, Date date2) {
Date theDate1 = org.apache.commons.lang3.time.DateUtils.truncate(date1,
Calendar.DATE);
Date theDate2 = org.apache.commons.lang3.time.DateUtils.truncate(date2,
Calendar.DATE);
return theDate1.after(theDate2);
}
/**
* 判断date1是否在date2之前,忽略时间部分
*
* @param date1
* @param date2
* @return
*/
public static boolean isDateBefore(Date date1, Date date2) {
return isDateAfter(date2, date1);
}
/**
* 判断time1是否在time2之后,忽略日期部分
*
* @param time1
* @param time2
* @return
*/
public static boolean isTimeAfter(Date time1, Date time2) {
Calendar calendar1 = Calendar.getInstance();
calendar1.setTime(time1);
calendar1.set(1900, 1, 1);
Calendar calendar2 = Calendar.getInstance();
calendar2.setTime(time2);
calendar2.set(1900, 1, 1);
return calendar1.after(calendar2);
}
/**
* 判断time1是否在time2之前,忽略日期部分
*
* @param time1
* @param time2
* @return
*/
public static boolean isTimeBefore(Date time1, Date time2) {
return isTimeAfter(time2, time1);
}
/**
* 判断两个日期是否同一天(忽略时间部分)
*
* @param date1
* @param date2
* @return
*/
public static boolean isSameDay(Date date1, Date date2) {
return org.apache.commons.lang3.time.DateUtils.isSameDay(date1, date2);
}
/**
* 判断两个日历天是否同一天(忽略时间部分)
*
* @param date1
* @param date2
* @return
*/
public static boolean isSameDay(Calendar date1, Calendar date2) {
return org.apache.commons.lang3.time.DateUtils.isSameDay(date1, date2);
}
/**
* 将字符串形式的日期表示解析为日期对象
*
* @param dateString
* @return
*/
public static Date parseDate(String dateString) {
try {
return org.apache.commons.lang3.time.DateUtils.parseDate(
dateString, new String[] { "yyyy-MM-dd", "yyyy-M-d",
"yyyy-MM-d", "yyyy-M-dd" });
} catch (ParseException e) {
return null;
}
}
/**
* 将字符串形式的时间表示解析为日期时间对象
*
* @param timeString
* @return
*/
public static Date parseTime(String timeString) {
try {
return org.apache.commons.lang3.time.DateUtils.parseDate(
timeString, new String[] { "hh:mm:ss", "h:m:s", "hh:mm",
"h:m" });
} catch (ParseException e) {
return null;
}
}
/**
* 将字符串形式的日期时间表示解析为时间对象
*
* @param timeString
* @return
*/
public static Date parseDateTime(String timeString) {
try {
return org.apache.commons.lang3.time.DateUtils.parseDate(
timeString, new String[] { "yyyy-MM-dd HH:mm:ss",
"yyyy-M-d H:m:s", "yyyy-MM-dd H:m:s",
"yyyy-M-d HH:mm:ss" });
} catch (ParseException e) {
return null;
}
}
/**
* 计算两个日期之间包含的星期X的天数。
*
* @param fromDate
* 起始日期
* @param toDate
* 结束日期
* @param dayOfWeek
* 星期,例如星期三,星期四
* @return
*/
public static int getWeekDaysBetween(Date fromDate, Date toDate,
int dayOfWeek) {
int result = 0;
Date firstDate = getFirstWeekdayBetween(fromDate, toDate, dayOfWeek);
if (firstDate == null) {
return 0;
}
Calendar aDay = Calendar.getInstance();
aDay.setTime(firstDate);
while (aDay.getTime().before(toDate)) {
result++;
aDay.add(Calendar.DATE, DAYS_IN_A_WEEK);
}
return result;
}
/**
* 获取在两个日期之间的第一个星期X
*
* @param fromDate
* 起始日期
* @param toDate
* 结束日期
* @param dayOfWeek
* 星期,例如星期三,星期四
* @return
*/
public static Date getFirstWeekdayBetween(Date fromDate, Date toDate,
int dayOfWeek) {
Calendar aDay = Calendar.getInstance();
aDay.setTime(fromDate);
while (aDay.getTime().before(toDate)) {
if (aDay.get(Calendar.DAY_OF_WEEK) == dayOfWeek) {
return aDay.getTime();
}
aDay.add(Calendar.DATE, 1);
}
return null;
}
/**
* 取得参数year指定的年份的总天数
*
* @param year
* @return
*/
public static int getDaysInYear(int year) {
Calendar aDay = Calendar.getInstance();
aDay.set(year, 1, 1);
Date from = aDay.getTime();
aDay.set(year + 1, 1, 1);
Date to = aDay.getTime();
return getDayDiff(from, to);
}
/**
* 取得指定年月的总天数
*
* @param year
* @param month
* @return
*/
public static int getDaysInMonth(int year, int month) {
Calendar aDay = Calendar.getInstance();
aDay.set(year, month, 1);
Date from = aDay.getTime();
if (month == Calendar.DECEMBER) {
aDay.set(year + 1, Calendar.JANUARY, 1);
} else {
aDay.set(year, month + 1, 1);
}
Date to = aDay.getTime();
return getDayDiff(from, to);
}
/**
* 获得指定日期的年份
*
* @param date
* @return
*/
public static int getYear(Date date) {
return getFieldValue(date, Calendar.YEAR);
}
/**
* 获得指定日期的月份
*
* @param date
* @return
*/
public static int getMonth(Date date) {
return getFieldValue(date, Calendar.MONTH) + 1;
}
/**
* 获得指定日期是当年的第几天
*
* @param date
* @return
*/
public static int getDayOfYear(Date date) {
return getFieldValue(date, Calendar.DAY_OF_YEAR);
}
/**
* 获得指定日期是当月的第几天
*
* @param date
* @return
*/
public static int getDayOfMonth(Date date) {
return getFieldValue(date, Calendar.DAY_OF_MONTH);
}
/**
* 获得指定日期是当周的第几天
*
* @param date
* @return
*/
public static int getDayOfWeek(Date date) {
return getFieldValue(date, Calendar.DAY_OF_WEEK);
}
private static int getFieldValue(Date date, int field) {
if (date == null) {
throw new InvalidParameterException("date cannot be null!");
}
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
return calendar.get(field);
}
/**
* 获得指定日期之后一段时期的日期。例如某日期之后3天的日期等。
* @param origDate 基准日期
* @param amount 时间数量
* @param timeUnit 时间单位,如年、月、日等。用Calendar中的常量代表
* @return
*/
public static final Date dateAfter(Date origDate, int amount, int timeUnit) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(origDate);
calendar.add(timeUnit, amount);
return calendar.getTime();
}
/**
* 获得指定日期之前一段时期的日期。例如某日期之前3天的日期等。
* @param origDate 基准日期
* @param amount 时间数量
* @param timeUnit 时间单位,如年、月、日等。用Calendar中的常量代表
* @return
*/
public static final Date dateBefore(Date origDate, int amount, int timeUnit) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(origDate);
calendar.add(timeUnit, -amount);
return calendar.getTime();
}
}
import java.security.InvalidParameterException;
import java.text.ParseException;
import java.util.Calendar;
import java.util.Date;
public class DateUtils {
private static final long MILLIS_IN_A_SECOND = 1000;
private static final long SECONDS_IN_A_MINUTE = 60;
private static final long MINUTES_IN_AN_HOUR = 60;
private static final long HOURS_IN_A_DAY = 24;
private static final int DAYS_IN_A_WEEK = 7;
private static final int MONTHS_IN_A_YEAR = 12;
//private static final int[] daysInMonth = new int[] { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
/**
* 最小日期,设定为1000年1月1日
*/
public static final Date MIN_DATE = date(1000, 1, 1);
/**
* 最大日期,设定为8888年1月1日
*/
public static final Date MAX_DATE = date(8888, 1, 1);
/**
* 根据年月日构建日期对象。注意月份是从1开始计数的,即month为1代表1月份。
* @param year 年
* @param month 月。注意1代表1月份,依此类推。
* @param day 日
* @return
*/
public static Date date(int year, int month, int date) {
Calendar calendar = Calendar.getInstance();
calendar.set(year, month - 1, date, 0, 0, 0);
calendar.set(Calendar.MILLISECOND, 0);
return calendar.getTime();
}
/**
* 计算两个日期(不包括时间)之间相差的周年数
*
* @param date1
* @param date2
* @return
*/
public static int getYearDiff(Date date1, Date date2) {
if (date1 == null || date2 == null) {
throw new InvalidParameterException(
"date1 and date2 cannot be null!");
}
if (date1.after(date2)) {
throw new InvalidParameterException("date1 cannot be after date2!");
}
Calendar calendar = Calendar.getInstance();
calendar.setTime(date1);
int year1 = calendar.get(Calendar.YEAR);
int month1 = calendar.get(Calendar.MONTH);
int day1 = calendar.get(Calendar.DATE);
calendar.setTime(date2);
int year2 = calendar.get(Calendar.YEAR);
int month2 = calendar.get(Calendar.MONTH);
int day2 = calendar.get(Calendar.DATE);
int result = year2 - year1;
if (month2 < month1) {
result--;
} else if (month2 == month1 && day2 < day1) {
result--;
}
return result;
}
/**
* 计算两个日期(不包括时间)之间相差的整月数
*
* @param date1
* @param date2
* @return
*/
public static int getMonthDiff(Date date1, Date date2) {
if (date1 == null || date2 == null) {
throw new InvalidParameterException(
"date1 and date2 cannot be null!");
}
if (date1.after(date2)) {
throw new InvalidParameterException("date1 cannot be after date2!");
}
Calendar calendar = Calendar.getInstance();
calendar.setTime(date1);
int year1 = calendar.get(Calendar.YEAR);
int month1 = calendar.get(Calendar.MONTH);
int day1 = calendar.get(Calendar.DATE);
calendar.setTime(date2);
int year2 = calendar.get(Calendar.YEAR);
int month2 = calendar.get(Calendar.MONTH);
int day2 = calendar.get(Calendar.DATE);
int months = 0;
if (day2 >= day1) {
months = month2 - month1;
} else {
months = month2 - month1 - 1;
}
return (year2 - year1) * MONTHS_IN_A_YEAR + months;
}
/**
* 统计两个日期之间包含的天数。包含date1,但不包含date2
*
* @param date1
* @param date2
* @return
*/
public static int getDayDiff(Date date1, Date date2) {
if (date1 == null || date2 == null) {
throw new InvalidParameterException(
"date1 and date2 cannot be null!");
}
Date startDate = org.apache.commons.lang3.time.DateUtils.truncate(
date1, Calendar.DATE);
Date endDate = org.apache.commons.lang3.time.DateUtils.truncate(date2,
Calendar.DATE);
if (startDate.after(endDate)) {
throw new InvalidParameterException("date1 cannot be after date2!");
}
long millSecondsInOneDay = HOURS_IN_A_DAY * MINUTES_IN_AN_HOUR
* SECONDS_IN_A_MINUTE * MILLIS_IN_A_SECOND;
return (int) ((endDate.getTime() - startDate.getTime()) / millSecondsInOneDay);
}
/**
* 计算time2比time1晚多少分钟,忽略日期部分
*
* @param time1
* @param time2
* @return
*/
public static int getMinuteDiffByTime(Date time1, Date time2) {
long startMil = 0;
long endMil = 0;
Calendar calendar = Calendar.getInstance();
calendar.setTime(time1);
calendar.set(1900, 1, 1);
startMil = calendar.getTimeInMillis();
calendar.setTime(time2);
calendar.set(1900, 1, 1);
endMil = calendar.getTimeInMillis();
return (int) ((endMil - startMil) / MILLIS_IN_A_SECOND / SECONDS_IN_A_MINUTE);
}
/**
* 计算指定日期的前一天
*
* @param date
* @return
*/
public static Date getPrevDay(Date date) {
return org.apache.commons.lang3.time.DateUtils.addDays(date, -1);
}
/**
* 计算指定日期的后一天
*
* @param date
* @return
*/
public static Date getNextDay(Date date) {
return org.apache.commons.lang3.time.DateUtils.addDays(date, 1);
}
/**
* 判断date1是否在date2之后,忽略时间部分
*
* @param date1
* @param date2
* @return
*/
public static boolean isDateAfter(Date date1, Date date2) {
Date theDate1 = org.apache.commons.lang3.time.DateUtils.truncate(date1,
Calendar.DATE);
Date theDate2 = org.apache.commons.lang3.time.DateUtils.truncate(date2,
Calendar.DATE);
return theDate1.after(theDate2);
}
/**
* 判断date1是否在date2之前,忽略时间部分
*
* @param date1
* @param date2
* @return
*/
public static boolean isDateBefore(Date date1, Date date2) {
return isDateAfter(date2, date1);
}
/**
* 判断time1是否在time2之后,忽略日期部分
*
* @param time1
* @param time2
* @return
*/
public static boolean isTimeAfter(Date time1, Date time2) {
Calendar calendar1 = Calendar.getInstance();
calendar1.setTime(time1);
calendar1.set(1900, 1, 1);
Calendar calendar2 = Calendar.getInstance();
calendar2.setTime(time2);
calendar2.set(1900, 1, 1);
return calendar1.after(calendar2);
}
/**
* 判断time1是否在time2之前,忽略日期部分
*
* @param time1
* @param time2
* @return
*/
public static boolean isTimeBefore(Date time1, Date time2) {
return isTimeAfter(time2, time1);
}
/**
* 判断两个日期是否同一天(忽略时间部分)
*
* @param date1
* @param date2
* @return
*/
public static boolean isSameDay(Date date1, Date date2) {
return org.apache.commons.lang3.time.DateUtils.isSameDay(date1, date2);
}
/**
* 判断两个日历天是否同一天(忽略时间部分)
*
* @param date1
* @param date2
* @return
*/
public static boolean isSameDay(Calendar date1, Calendar date2) {
return org.apache.commons.lang3.time.DateUtils.isSameDay(date1, date2);
}
/**
* 将字符串形式的日期表示解析为日期对象
*
* @param dateString
* @return
*/
public static Date parseDate(String dateString) {
try {
return org.apache.commons.lang3.time.DateUtils.parseDate(
dateString, new String[] { "yyyy-MM-dd", "yyyy-M-d",
"yyyy-MM-d", "yyyy-M-dd" });
} catch (ParseException e) {
return null;
}
}
/**
* 将字符串形式的时间表示解析为日期时间对象
*
* @param timeString
* @return
*/
public static Date parseTime(String timeString) {
try {
return org.apache.commons.lang3.time.DateUtils.parseDate(
timeString, new String[] { "hh:mm:ss", "h:m:s", "hh:mm",
"h:m" });
} catch (ParseException e) {
return null;
}
}
/**
* 将字符串形式的日期时间表示解析为时间对象
*
* @param timeString
* @return
*/
public static Date parseDateTime(String timeString) {
try {
return org.apache.commons.lang3.time.DateUtils.parseDate(
timeString, new String[] { "yyyy-MM-dd HH:mm:ss",
"yyyy-M-d H:m:s", "yyyy-MM-dd H:m:s",
"yyyy-M-d HH:mm:ss" });
} catch (ParseException e) {
return null;
}
}
/**
* 计算两个日期之间包含的星期X的天数。
*
* @param fromDate
* 起始日期
* @param toDate
* 结束日期
* @param dayOfWeek
* 星期,例如星期三,星期四
* @return
*/
public static int getWeekDaysBetween(Date fromDate, Date toDate,
int dayOfWeek) {
int result = 0;
Date firstDate = getFirstWeekdayBetween(fromDate, toDate, dayOfWeek);
if (firstDate == null) {
return 0;
}
Calendar aDay = Calendar.getInstance();
aDay.setTime(firstDate);
while (aDay.getTime().before(toDate)) {
result++;
aDay.add(Calendar.DATE, DAYS_IN_A_WEEK);
}
return result;
}
/**
* 获取在两个日期之间的第一个星期X
*
* @param fromDate
* 起始日期
* @param toDate
* 结束日期
* @param dayOfWeek
* 星期,例如星期三,星期四
* @return
*/
public static Date getFirstWeekdayBetween(Date fromDate, Date toDate,
int dayOfWeek) {
Calendar aDay = Calendar.getInstance();
aDay.setTime(fromDate);
while (aDay.getTime().before(toDate)) {
if (aDay.get(Calendar.DAY_OF_WEEK) == dayOfWeek) {
return aDay.getTime();
}
aDay.add(Calendar.DATE, 1);
}
return null;
}
/**
* 取得参数year指定的年份的总天数
*
* @param year
* @return
*/
public static int getDaysInYear(int year) {
Calendar aDay = Calendar.getInstance();
aDay.set(year, 1, 1);
Date from = aDay.getTime();
aDay.set(year + 1, 1, 1);
Date to = aDay.getTime();
return getDayDiff(from, to);
}
/**
* 取得指定年月的总天数
*
* @param year
* @param month
* @return
*/
public static int getDaysInMonth(int year, int month) {
Calendar aDay = Calendar.getInstance();
aDay.set(year, month, 1);
Date from = aDay.getTime();
if (month == Calendar.DECEMBER) {
aDay.set(year + 1, Calendar.JANUARY, 1);
} else {
aDay.set(year, month + 1, 1);
}
Date to = aDay.getTime();
return getDayDiff(from, to);
}
/**
* 获得指定日期的年份
*
* @param date
* @return
*/
public static int getYear(Date date) {
return getFieldValue(date, Calendar.YEAR);
}
/**
* 获得指定日期的月份
*
* @param date
* @return
*/
public static int getMonth(Date date) {
return getFieldValue(date, Calendar.MONTH) + 1;
}
/**
* 获得指定日期是当年的第几天
*
* @param date
* @return
*/
public static int getDayOfYear(Date date) {
return getFieldValue(date, Calendar.DAY_OF_YEAR);
}
/**
* 获得指定日期是当月的第几天
*
* @param date
* @return
*/
public static int getDayOfMonth(Date date) {
return getFieldValue(date, Calendar.DAY_OF_MONTH);
}
/**
* 获得指定日期是当周的第几天
*
* @param date
* @return
*/
public static int getDayOfWeek(Date date) {
return getFieldValue(date, Calendar.DAY_OF_WEEK);
}
private static int getFieldValue(Date date, int field) {
if (date == null) {
throw new InvalidParameterException("date cannot be null!");
}
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
return calendar.get(field);
}
/**
* 获得指定日期之后一段时期的日期。例如某日期之后3天的日期等。
* @param origDate 基准日期
* @param amount 时间数量
* @param timeUnit 时间单位,如年、月、日等。用Calendar中的常量代表
* @return
*/
public static final Date dateAfter(Date origDate, int amount, int timeUnit) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(origDate);
calendar.add(timeUnit, amount);
return calendar.getTime();
}
/**
* 获得指定日期之前一段时期的日期。例如某日期之前3天的日期等。
* @param origDate 基准日期
* @param amount 时间数量
* @param timeUnit 时间单位,如年、月、日等。用Calendar中的常量代表
* @return
*/
public static final Date dateBefore(Date origDate, int amount, int timeUnit) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(origDate);
calendar.add(timeUnit, -amount);
return calendar.getTime();
}
}
发表评论
-
电话号码与手机号码同时验证
2013-03-25 08:54 793if(!preg_match('/(^0\d{2,3}\-\d ... -
50个jQuery代码段帮你成为更出色的JS开发者
2013-03-20 11:32 615http://www.jqdemo.com/525.html -
File中代替"/"的方法
2013-03-07 16:32 659File.separator -
java获取路径几种途径
2013-03-07 16:26 826在写java程序时不可避免要获取文件的路径...总结一下,遗漏 ... -
Log4j输出级别
2013-03-04 10:21 670对于日志输出级别来说, 下面是我们应该记住的一些原则: ER ... -
Log4家
2013-03-04 10:21 17对于日志输出级别来说, 下面是我们应该记住的一些原则: ER ... -
Java编码易疏忽的十个问题
2013-02-22 09:00 679在Java编码中,我们容易 ... -
getOutputStream() has already been called for this response异常的原因和解决方法
2013-02-20 08:52 6541.tomcat5下jsp出现getOutputStream( ... -
Java Date类操纵
2012-11-23 08:48 634获取系统当前时间: Java代码 public s ...
相关推荐
除了这两个主要工具类,`javaUtils`文件夹中可能还包含其他类型的工具类,如日期时间工具、字符串处理工具、集合操作工具等。这些工具类通常具有高度封装和可重用性,可以帮助开发者快速实现功能,减少重复代码,...
Java是一种广泛使用的编程语言,其丰富的库和工具类极大地提升了开发效率。在Java中,工具类通常是封装了常见操作的静态方法集合,便于开发者在不同项目中复用。本资源包含了一系列全面的Java工具类,涵盖了多个核心...
通过使用该工具类,可以大大提高开发效率,节约时间成本。 3、该工具类使用非常简单。只需要复制数据库列名,支持多列复制,执行工具类即可生成对应的Java字段代码。 4、优点:使用代码生成驼峰形式的字段,可以...
java 时间工具类 java 时间工具类java 时间工具类java 时间工具类java 时间工具类 java 时间工具类java 时间工具类java 时间工具类java 时间工具类 java 时间工具类java 时间工具类java 时间工具类java 时间工具类 ...
资源名称:DateUtil 日期时间转换工具类 内容概要:日期时间转换工具类,包括基本的Date类型,String类型,TimeStamp类型,LocalDateTime类型,LocalDate类型之间的互相转换,还提供了许多与时间获取,时间计算有关...
使用java工具类可有效的提高开发效率! 没有CSDN积分的朋友到这里源头下载:http://www.javacs.cn/bbs/thread-382-1-1.html 感谢支持 ...[工具类] 时间工具TimeUtil.java [工具类] 连数据库ConnectDB.java
总之,"linux实用脚本show-busy-java-threads"、"show-duplicate-java-classes"以及"find-in-jars"是Java开发者和系统管理员在Linux环境下不可或缺的工具,它们能够有效地帮助我们诊断和优化Java应用程序,提升系统...
Redis 工具类在 Java 开发中的应用 Redis 是一个开源的、高性能的键值存储系统,它支持多种数据结构,如字符串(strings)、散列(hashes)、列表(lists)、集合(sets)以及有序集合(sorted sets)。由于其速度...
Java工具类集合是Java开发中不可或缺的一部分,它们提供了一系列便捷的方法,帮助开发者高效地处理各种常见任务。在Java中,工具类通常被组织在各种包下,如`java.util`、`java.lang`、`java.io`等。下面将详细介绍...
java 时间工具类 java 时间工具类java 时间工具类 java 时间工具类java 时间工具类 java 时间工具类java 时间工具类 java 时间工具类java 时间工具类 java 时间工具类
本资料“Java-Android工具类”显然是一份包含了多种实用工具类的集合,旨在帮助开发者在Java和Android开发过程中节省时间和精力。 首先,我们来探讨一下SD工具类。在Android系统中,外部存储空间(如SD卡)通常用于...
java 时间 datatime 工具类
[工具类] CookieCounter .java.txt [工具类] 验证码img .jsp.txt [工具类] Java中计算任意两个日期之间的工作天数 .java.txt [工具类] java抓取网页...[工具类] 时间工具TimeUtil.java [工具类] 连数据库ConnectDB.java
本篇将围绕Java中的日期工具类和时间工具类展开讨论,同时会涉及到日期时间的格式化。 首先,Java 8之前,我们主要依赖`java.util.Date`和`java.text.SimpleDateFormat`这两个类来处理日期和时间。`Date`类用于表示...
1. **添加依赖**:在Java项目中,需要将`mysql-connector-java-5.1.7-bin.jar`加入到类路径(classpath)中,对于现代的构建工具如Maven或Gradle,可以在配置文件中添加对应的依赖条目。 2. **建立连接**:在Java...
4.[工具类] 时间工具TimeUtil.java 5.[工具类] 通信服务端simpleServer 6.[工具类] 使用Java程序来实现HTTP文件的队列下载 .java 7.[工具类] 文件操作工具类 .java 8.[工具类] 序列化保存为XML文件的工具类 .java 9....
4. 其他通用工具:如字符串处理、日期时间操作、集合操作等实用工具类,简化常见的编程任务。 在实际应用中,开发者可以利用这些工具来提高代码的效率和质量,减少重复工作。例如,通过Mchange Commons的数据库连接...
java日期时间工具类超级全。其中包含:获得当前日期 yyyy-MM-dd HH:mm:ss;获取系统当前时间戳;获取当前日期 yy-MM-dd;得到两个时间差 格式yyyy-MM-dd HH:mm:ss;转化long值的日期为yyyy-MM-dd HH:mm:ss.SSS格式的...
各种日期格式化和转换 将 Calendar 转为字符串 获取当前月份的最后一天 根据 timestamp 生成各类时间状态串 计算两个日期之间相差的天数 等等等等
java 设置为东八区时间工具类 java 设置为东八区时间工具类java 设置为东八区时间工具类 java 设置为东八区时间工具类java 设置为东八区时间工具类 java 设置为东八区时间工具类java 设置为东八区时间工具类 java ...