/**
* Copyright (c) 2018-2019, Jie Li 李杰 (mqgnsds@163.com).
* <p>
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* <p>
* http://www.apache.org/licenses/LICENSE-2.0
* <p>
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.momo.common.core.util;
import lombok.extern.slf4j.Slf4j;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.sql.Timestamp;
import java.text.DateFormat;
import java.text.Format;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.*;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeParseException;
import java.time.temporal.ChronoUnit;
import java.util.*;
/**
* @ClassName: DateUtils
* @Author: Jie Li
* @Date 2019-11-20 14:46
* @Description: 时间计算工具类
* @Version: 1.0
* <p>Copyright: Copyright (c) 2019</p>
**/
@Slf4j
public class DateUtils {
/**
* 英文简写(默认)如:2010-12-01
*/
public static String FORMAT_SHORT = "yyyy-MM-dd";
/**
* 英文全称 如:2010-12-01 23:15:06
*/
public static String FORMAT_LONG = "yyyy-MM-dd HH:mm:ss";
/**
* 精确到毫秒的完整时间 如:yyyy-MM-dd HH:mm:ss.S
*/
public static String FORMAT_FULL = "yyyy-MM-dd HH:mm:ss.S";
/**
* 中文简写 如:2010年12月01日
*/
public static String FORMAT_SHORT_CN = "yyyy年MM月dd";
/**
* 中文全称 如:2010年12月01日 23时15分06秒
*/
public static String FORMAT_LONG_CN = "yyyy年MM月dd日 HH时mm分ss秒";
/**
* 精确到毫秒的完整中文时间
*/
public static String FORMAT_FULL_CN = "yyyy年MM月dd日 HH时mm分ss秒SSS毫秒";
/**
* the milli second of a day
*/
public static final long DAYMILLI = 24 * 60 * 60 * 1000;
/**
* the milli seconds of an hour
*/
public static final long HOURMILLI = 60 * 60 * 1000;
/**
* the milli seconds of a minute
*/
public static final long MINUTEMILLI = 60 * 1000;
/**
* the milli seconds of a second
*/
public static final long SECONDMILLI = 1000;
/**
* added time
*/
public static final String TIMETO = " 23:59:59";
/**
* flag before
*/
public static final transient int BEFORE = 1;
/**
* flag after
*/
public static final transient int AFTER = 2;
/**
* flag equal
*/
public static final transient int EQUAL = 3;
/**
* date format dd/MMM/yyyy:HH:mm:ss +0900
*/
public static final String TIME_PATTERN_LONG = "dd/MMM/yyyy:HH:mm:ss +0900";
/**
* date format dd/MM/yyyy:HH:mm:ss +0900
*/
public static final String TIME_PATTERN_LONG2 = "dd/MM/yyyy:HH:mm:ss +0900";
/**
* date format YYYY-MM-DD HH24:MI:SS
*/
public static final String DB_TIME_PATTERN = "YYYY-MM-DD HH24:MI:SS";
/**
* date format YYYYMMDDHH24MISS
*/
public static final String DB_TIME_PATTERN_1 = "YYYYMMDDHH24MISS";
/**
* date format dd/MM/yy HH:mm:ss
*/
public static final String TIME_PATTERN_SHORT = "dd/MM/yy HH:mm:ss";
/**
* date format dd/MM/yy HH24:mm
*/
public static final String TIME_PATTERN_SHORT_1 = "yyyy/MM/dd HH:mm";
/**
* date format yyyy年MM月dd日 HH:mm:ss
*/
public static final String TIME_PATTERN_SHORT_2 = "yyyy年MM月dd日 HH:mm:ss";
/**
* date format yyyyMMddHHmmss
*/
public static final String TIME_PATTERN_SESSION = "yyyyMMddHHmmss";
/**
* date format yyyyMMddHHmmssSSS
*/
public static final String TIME_PATTERN_MILLISECOND = "yyyyMMddHHmmssSSS";
/**
* date format yyyyMMdd
*/
public static final String DATE_FMT_0 = "yyyyMMdd";
/**
* date format yyyy/MM/dd
*/
public static final String DATE_FMT_1 = "yyyy/MM/dd";
/**
* date format yyyy/MM/dd hh:mm:ss
*/
public static final String DATE_FMT_2 = "yyyy/MM/dd hh:mm:ss";
/**
* date format yyyy-MM-dd
*/
public static final String DATE_FMT_3 = "yyyy-MM-dd";
/**
* date format yyyy年MM月dd日
*/
public static final String DATE_FMT_4 = "yyyy年MM月dd日";
/**
* date format yyyy-MM-dd HH
*/
public static final String DATE_FMT_5 = "yyyy-MM-dd HH";
/**
* date format yyyy-MM
*/
public static final String DATE_FMT_6 = "yyyy-MM";
/**
* date format MM月dd日 HH:mm
*/
public static final String DATE_FMT_7 = "MM月dd日 HH:mm";
/**
* date format MM月dd日 HH:mm
*/
public static final String DATE_FMT_8 = "HH:mm:ss";
/**
* date format MM月dd日 HH:mm
*/
public static final String DATE_FMT_9 = "yyyy.MM.dd";
public static final String DATE_FMT_10 = "HH:mm";
public static final String DATE_FMT_11 = "yyyy.MM.dd HH:mm:ss";
/**
* date format yyyy年MM月dd日
*/
public static final String DATE_FMT_12 = "MM月dd日";
public static final String DATE_FMT_13 = "yyyy年MM月dd日HH时mm分";
public static final String DATE_FMT_14 = "yyyyMM";
public static final String DATE_FMT_15 = "MM-dd HH:mm:ss";
public static final String DATE_FMT_16 = "yyyyMMddHHmm";
public static final String DATE_FMT_17 = "HHmmss";
public static final String DATE_FMT_18 = "yyyy";
/**
* date format yyyy-MM-dd HH:mm:ss
*/
public static final String TIME_PATTERN = "yyyy-MM-dd HH:mm:ss";
public static Date getDateTime() {
return new Date();
}
public static Date getCurrentTime() {
return new Date();
}
public static long getMinuteDifference(Date endDate, Date nowDate) {
long nd = 1000 * 24 * 60 * 60;
long nh = 1000 * 60 * 60;
long nm = 1000 * 60;
long ns = 1000;
// long ns = 1000;
// 获得两个时间的毫秒时间差异
long diff = endDate.getTime() - nowDate.getTime();
/* // 计算差多少天
long day = diff / nd;
// 计算差多少小时
long hour = diff % nd / nh;*/
// 计算差多少分钟
long min = diff % nd % nh / nm;
// 计算差多少秒//输出结果
long second = diff / ns;
return second;
}
public static String SYSDATE(String str) {
Format format = new SimpleDateFormat(str);
String st = format.format(new Date());
return st;
}
public static String SYSDATEFORMATE() {
Date date = new Date();
DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = format.format(date);// time就是当前时间
time = date2TimeStamp(time, "yyyy-MM-dd HH:mm:ss");
return time;
}
public static String dateToString2(Date date) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
return format.format(date);
}
/**
* 转换日期格式
*
* @param date_str ,String
* @return
*/
public static String date2TimeStamp(String date_str, String format) {
try {
SimpleDateFormat sdf = new SimpleDateFormat(format);
return String.valueOf(sdf.parse(date_str).getTime() / 1000);
} catch (Exception e) {
e.printStackTrace();
}
return "";
}
// 返回当前天时间范围
public static String getDateTo(String type, int day) {
// 当前时间的前一个星期 开始时间
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getIns
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
GUI界面详情,请查看:https://arthas777.blog.csdn.net/article/details/135075030 基于SpringBoot2.x、SpringCloud和SpringCloudAlibaba并采用前后端分离的企业级微服务多租户、多系统的系统架构。适合学习和企业中使用。真正实现了手撸RBAC、jwt的无状态统一权限认证的解决方案,面向互联网设计同时适合B端和C端用户,支持CI/CD多环境部署;同时还集合各种微服务治理功能和监控功能。模块包括:企业级的认证系统、开发平台、应用监控、慢sql监控、统一日志、单点登录、Redis分布式高速缓存、接口文档、蚂蚁金服代码生成器等等!netty心跳服务器支持鉴权、断线重连、其他业务模块开发
资源推荐
资源详情
资源评论
收起资源包目录
基于SpringBoot+Vue实现的企业级微服务多租户多系统架构(部署完成标准企业级WEB后台、可二次开发) (648个子文件)
index.css 414KB
waves.css 825B
.env.dev 726B
table-config-1.0.dtd 9KB
.editorconfig 244B
.eslintignore 34B
spring.factories 110B
initTableXml.ftl 11KB
BasePage.java.ftl 7KB
lib.ftl 5KB
DAO.java.ftl 5KB
function.ftl 4KB
XMLMapper.xml.ftl 4KB
ResultMap.java.ftl 3KB
mybatis-config.xml.ftl 3KB
DBPreCheckMapper.xml.ftl 2KB
DOMapper.java.ftl 1KB
Page.java.ftl 956B
DO.java.ftl 919B
DBPreCheckMapper.java.ftl 521B
401.gif 160KB
.gitignore 817B
.gitignore 371B
.gitignore 371B
.gitignore 371B
.gitignore 288B
index.hbs 302B
index.hbs 302B
WebsocketChatClient.html 3KB
WebsocketChatClient.html 2KB
greet_user.html 1KB
error.html 498B
index.html 488B
favicon.ico 66KB
mybatis-generator-core-1.3.5-javadoc.jar 1.72MB
mysql-connector-java-5.1.21-bin.jar 809KB
mybatis-generator-core-1.3.5.jar 543KB
mybatis-generator-core-1.3.5-sources.jar 437KB
DateUtils.java 48KB
SysEnterpriseServiceImpl.java 43KB
RoleService.java 30KB
AclService.java 20KB
RedisUtil.java 17KB
SysUserServiceImpl.java 15KB
SysMainService.java 13KB
DataDictServiceImpl.java 11KB
TokenFilter.java 11KB
UserAgentUtils.java 10KB
SysEnterpriseController.java 10KB
AclDO.java 9KB
CommonAuthorityService.java 8KB
RoleRedisCacheServiceAsync.java 8KB
SnowFlake.java 8KB
AclDOMapper.java 8KB
RateCheckRedisRateLimiter.java 8KB
NettyHandlerService.java 8KB
RedisConfig.java 8KB
UserDO.java 7KB
UserGroupDO.java 7KB
DataDictDO.java 7KB
DataDictDelsDO.java 7KB
RateCheckGatewayFilterFactory.java 6KB
RoutesDOMapper.java 6KB
AdminSysCoreService.java 6KB
RoutesDO.java 6KB
AdminAuthorityService.java 6KB
CommonSysCoreServiceCache.java 6KB
AdminSysCoreServiceCache.java 6KB
LoginLogDO.java 6KB
RedisConfig.java 6KB
UserAccountPwdDO.java 6KB
CommonAuthorityServiceCache.java 6KB
DefaultExceptionAdvice.java 6KB
CommonSysCoreService.java 6KB
DataSourceConfig.java 6KB
RandomName.java 6KB
ServiceRequestAspect.java 6KB
DeptDO.java 6KB
JsonExceptionHandler.java 6KB
SysEnterpriseService.java 5KB
ParamsUtil.java 5KB
DynamicRouteService.java 5KB
JwtTokenUtil.java 5KB
JsonExceptionHandler.java 5KB
OkHttpLoggerInterceptor.java 5KB
LoggerInterceptor.java 5KB
RoleDO.java 5KB
RoleAclDO.java 5KB
RoleController.java 5KB
AdminAuthorityServiceCache.java 4KB
NettyConfig.java 4KB
TCPServer.java 4KB
AsyncTaskExecutePool.java 4KB
ChannelManager.java 4KB
ChatHandler.java 4KB
BugDO.java 4KB
RoleUserDO.java 4KB
SysDeptServiceImpl.java 4KB
UserDeptDO.java 4KB
UserDOMapper.java 4KB
共 648 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7
资源评论
心兰相随引导者
- 粉丝: 777
- 资源: 5486
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功