package me.lindanpeng.qunawan.core.util;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
/**
* 描述:公共日期工具类
*/
public class DateUtils {
public static String DATE_FORMAT = "yyyy-MM-dd";
public static String DATE_TIME_FORMAT = "yyyy-MM-dd HH:mm:ss";
public static String DATE_FORMAT_CHINESE = "yyyy年M月d日";
/**
* 获取当前日期
*
* @return
*/
public static String getCurrentDate() {
String datestr = null;
SimpleDateFormat df = new SimpleDateFormat(DateUtils.DATE_FORMAT);
datestr = df.format(new Date());
return datestr;
}
/**
* 获取当前日期时间
*
* @return
*/
public static String getCurrentDateTime() {
String datestr = null;
SimpleDateFormat df = new SimpleDateFormat(DateUtils.DATE_TIME_FORMAT);
datestr = df.format(new Date());
return datestr;
}
/**
* 获取当前日期时间
*
* @return
*/
public static String getCurrentDateTime(String Dateformat) {
String datestr = null;
SimpleDateFormat df = new SimpleDateFormat(Dateformat);
datestr = df.format(new Date());
return datestr;
}
public static String dateToDateTime(Date date) {
String datestr = null;
SimpleDateFormat df = new SimpleDateFormat(DateUtils.DATE_TIME_FORMAT);
datestr = df.format(date);
return datestr;
}
/**
* 将字符串日期转换为日期格式
*
* @param datestr
* @return
*/
public static Date stringToDate(String datestr) {
if (datestr == null || datestr.equals("")) {
return null;
}
Date date = new Date();
SimpleDateFormat df = new SimpleDateFormat(DateUtils.DATE_FORMAT);
try {
date = df.parse(datestr);
} catch (ParseException e) {
date = DateUtils.stringToDate(datestr, "yyyyMMdd");
}
return date;
}
/**
* 将字符串日期转换为日期格式
* 自定義格式
*
* @param datestr
* @return
*/
public static Date stringToDate(String datestr, String dateformat) {
Date date = new Date();
SimpleDateFormat df = new SimpleDateFormat(dateformat);
try {
date = df.parse(datestr);
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}
/**
* 将日期格式日期转换为字符串格式
*
* @param date
* @return
*/
public static String dateToString(Date date) {
String datestr = null;
SimpleDateFormat df = new SimpleDateFormat(DateUtils.DATE_FORMAT);
datestr = df.format(date);
return datestr;
}
/**
* 将日期格式日期转换为字符串格式 自定義格式
*
* @param date
* @param dateformat
* @return
*/
public static String dateToString(Date date, String dateformat) {
String datestr = null;
SimpleDateFormat df = new SimpleDateFormat(dateformat);
datestr = df.format(date);
return datestr;
}
/**
* 获取日期的DAY值
*
* @param date 输入日期
* @return
*/
public static int getDayOfDate(Date date) {
int d = 0;
Calendar cd = Calendar.getInstance();
cd.setTime(date);
d = cd.get(Calendar.DAY_OF_MONTH);
return d;
}
/**
* 获取日期的MONTH值
*
* @param date 输入日期
* @return
*/
public static int getMonthOfDate(Date date) {
int m = 0;
Calendar cd = Calendar.getInstance();
cd.setTime(date);
m = cd.get(Calendar.MONTH) + 1;
return m;
}
/**
* 获取日期的YEAR值
*
* @param date 输入日期
* @return
*/
public static int getYearOfDate(Date date) {
int y = 0;
Calendar cd = Calendar.getInstance();
cd.setTime(date);
y = cd.get(Calendar.YEAR);
return y;
}
/**
* 获取星期几
*
* @param date 输入日期
* @return
*/
public static int getWeekOfDate(Date date) {
int wd = 0;
Calendar cd = Calendar.getInstance();
cd.setTime(date);
wd = cd.get(Calendar.DAY_OF_WEEK) - 1;
return wd;
}
/**
* 获取输入日期的当月第一天
*
* @param date 输入日期
* @return
*/
public static Date getFirstDayOfMonth(Date date) {
Calendar cd = Calendar.getInstance();
cd.setTime(date);
cd.set(Calendar.DAY_OF_MONTH, 1);
return cd.getTime();
}
/**
* 获得输入日期的当月最后一天
*
* @param date
*/
public static Date getLastDayOfMonth(Date date) {
return DateUtils.addDay(DateUtils.getFirstDayOfMonth(DateUtils.addMonth(date, 1)), -1);
}
/**
* 判断是否是闰年
*
* @param date 输入日期
* @return 是true 否false
*/
public static boolean isLeapYEAR(Date date) {
Calendar cd = Calendar.getInstance();
cd.setTime(date);
int year = cd.get(Calendar.YEAR);
if (year % 4 == 0 && year % 100 != 0 | year % 400 == 0) {
return true;
} else {
return false;
}
}
/**
* 根据整型数表示的年月日,生成日期类型格式
*
* @param year 年
* @param month 月
* @param day 日
* @return
*/
public static Date getDateByYMD(int year, int month, int day) {
Calendar cd = Calendar.getInstance();
cd.set(year, month - 1, day);
return cd.getTime();
}
/**
* 获取年周期对应日
*
* @param date 输入日期
* @param iyear 年数 負數表示之前
* @return
*/
public static Date getYearCycleOfDate(Date date, int iyear) {
Calendar cd = Calendar.getInstance();
cd.setTime(date);
cd.add(Calendar.YEAR, iyear);
return cd.getTime();
}
/**
* 获取月周期对应日
*
* @param date 输入日期
* @param i
* @return
*/
public static Date getMonthCycleOfDate(Date date, int i) {
Calendar cd = Calendar.getInstance();
cd.setTime(date);
cd.add(Calendar.MONTH, i);
return cd.getTime();
}
/**
* 计算 fromDate 到 toDate 相差多少年
*
* @param fromDate
* @param toDate
* @return 年数
*/
public static int getYearByMinusDate(Date fromDate, Date toDate) {
Calendar df = Calendar.getInstance();
df.setTime(fromDate);
Calendar dt = Calendar.getInstance();
dt.setTime(toDate);
return dt.get(Calendar.YEAR) - df.get(Calendar.YEAR);
}
/**
* 计算 fromDate 到 toDate 相差多少个月
*
* @param fromDate
* @param toDate
* @return 月数
*/
public static int getMonthByMinusDate(Date fromDate, Date toDate) {
Calendar df = Calendar.getInstance();
df.setTime(fromDate);
Calendar dt = Calendar.getInstance();
dt.setTime(toDate);
return dt.get(Calendar.YEAR) * 12 + dt.get(Calendar.MONTH) -
(df.get(Calendar.YEAR) * 12 + df.get(Calendar.MONTH));
}
/**
* 计算 fromDate 到 toDate 相差多少天
*
* @param fromDate
* @param toDate
* @return 天数
*/
public static long getDayByMinusDate(Object fromDate, Object toDate) {
Date f = DateUtils.chgObject(fromDate);
Date t = DateUtils.chgObject(toDate);
long fd = f.getTime();
long td = t.getTime();
return (td - fd) / (24L * 60L * 60L * 1000L);
}
/**
* 计算年龄
*
* @param birthday 生日日期
* @param calcDa
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
本科毕设课题:旅游景点推荐系统。.zip (82个子文件)
qunawan-backend-master
pom.xml 2KB
qunawan-api
pom.xml 2KB
src
main
resources
application.yml 259B
java
me
lindanpeng
qunawan
api
constant
CommonConstant.java 181B
protocol
CodeMsg.java 675B
ApiResponse.java 1KB
Starter.java 735B
controller
RouterController.java 919B
RegionController.java 1KB
UserController.java 1KB
EvaluateController.java 2KB
LoginController.java 2KB
RegisterController.java 2KB
ScenicController.java 4KB
ViewHistoryController.java 1KB
service
UserService.java 788B
EvaluateService.java 2KB
AbstractService.java 488B
ViewHistoryService.java 512B
ScenicService.java 7KB
SessionService.java 2KB
RegionService.java 461B
exception
GlobalExceptionHandler.java 775B
ServiceException.java 421B
dto
RegisterDto.java 911B
SessionData.java 637B
DoLoginDto.java 611B
vo
ScenicPreviewVo.java 2KB
ScenicRankVo.java 5KB
EvaluateVo.java 4KB
ScenicDetailVo.java 6KB
UserInfoVo.java 2KB
config
HttpSessionConfig.java 276B
InterceptorConfig.java 1016B
interceptor
RequestInfoInterceptor.java 1KB
AuthInterceptor.java 1KB
.gitignore 319B
qunawan-core
pom.xml 2KB
src
main
resources
mapper
scenicIntroMapper.xml 427B
regionMapper.xml 395B
evaluateMapper.xml 1KB
scenicMapper.xml 3KB
userMapper.xml 703B
scenicImgMapper.xml 420B
viewHistoryMapper.xml 619B
config
application.yml 454B
java
me
lindanpeng
qunawan
core
constant
UserConstant.java 832B
cache
AbstractRedisClient.java 815B
CommonRedisClient.java 1KB
dao
RegionDao.java 200B
ScenicIntroDao.java 180B
UserDao.java 298B
ScenicDao.java 574B
EvaluateDao.java 699B
ViewHistoryDao.java 242B
ScenicImgDao.java 210B
entity
ScenicImg.java 925B
ScenicIntro.java 794B
Evaluate.java 3KB
Region.java 706B
Scenic.java 3KB
User.java 3KB
ViewHistory.java 922B
util
MapUtil.java 1KB
PageHelper.java 4KB
DateUtils.java 11KB
es
repository
EsScenicRepository.java 337B
model
EsScenic.java 2KB
config
DataSourceConfig.java 833B
RedisConfig.java 2KB
MybatisConfig.java 2KB
qunawan-recommend
pom.xml 2KB
src
main
resources
application.yml 0B
java
me
lindanpeng
qunawan
recommend
Starter.java 880B
job
AbstractJob.java 187B
ScenicRecommendJob.java 3KB
UpdateScenicScoreJob.java 4KB
PostScenicToEsJob.java 3KB
mahout
ScenicRecommender.java 4KB
ScoreData.java 561B
config
InitConfig.java 829B
ScheduleConfig.java 607B
共 82 条
- 1
资源评论
马coder
- 粉丝: 1202
- 资源: 6602
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功