整合日期工具类DateUtils

  • dateUtils日期工具类封装-各类格式方法

    pom文件引入
        <dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.3.5</version>
</dependency>

封装的具体格式

package com.webui.utils;

import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil; import java.util.Date; /**
* 日期工具类
*
* @author czy
* @date 2020年08月03日上午午11:20:58
*/
public class DateUtils extends DateUtil {
/**
* 例:2019
*/
public final static String YYYY = "yyyy";
/**
* 例:2019-10
*/
public final static String YYYY_MM = "yyyy-MM";
/**
* 例:2019-10-01
*/
public final static String YYYY_MM_DD = "yyyy-MM-dd";
/**
* 例:10-10 10:10:10
*/
public final static String MM_DD_HH_MM_SS = "MM-dd HH:mm:ss";
/**
* 例:10:10
*/
public final static String HH_MM = "HH:mm";
/**
* 例:2019-10-10 10:10:10
*/
public final static String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss";
/**
* 例:10-10
*/
public final static String MM_DD = "MM-dd";
/**
* 例:10:10:10
*/
public final static String HH_MM_SS = "HH:mm:ss"; /**
* 返回YYYY 为格式的时间字符
*
* @return String
*/
public static String getCurrentYear() {
return DateTime.now().toString(YYYY);
} /**
* 返回YYYY-MM 为格式的时间字符
*
* @return String
*/
public static String getCurrentYearAndMonth() {
return DateTime.now().toString(YYYY_MM);
} /**
* 返回YYYY-MM-DD 为格式的时间字符
*
* @return String
*/
public static String getCurrentYearAndMonthAndDate() {
return DateTime.now().toString(YYYY_MM_DD);
} /**
* 返回YYYY-MM-DD HH:mm:ss 为格式的时间字符
*
* @return String
*/
public static String getCurrentTime() {
return DateTime.now().toString(YYYY_MM_DD_HH_MM_SS);
} /**
* 返回MM-dd HH:mm:ss 为格式的时间字符
*
* @return String
*/
public static String getCurrentDateAndTime() {
return DateTime.now().toString(MM_DD_HH_MM_SS);
} /**
* 返回HH:mm 为格式的时间字符
*
* @return String
*/
public static String getCurrentHourAndMinutes() {
return DateTime.now().toString(HH_MM);
} /**
* 返回HH:mm:ss 为格式的时间字符
*
* @return String
*/
public static String getCurrentHourAndMinutesAndSeconds() {
return DateTime.now().toString(HH_MM_SS);
} /**
* 返回YYYYMMDDHHmmss 为格式的时间字符
*
* @return String
*/
public static String getTimeMillis() {
return DateTime.now().toString(DatePattern.PURE_DATETIME_MS_PATTERN);
} /**
* @param date
* @param format
* @return
*/
public static String dateToStr(Date date, String format) {
return new DateTime(date).toString(format);
} /**
* 返回当前年
*
* @return int
*/
public static int getYear() {
return thisYear();
} /**
* 返回当前月份
*
* @return int
*/
public static int getMonth() {
return thisMonth();
} /**
* 返回当天是当月的第几号
*
* @return int
*/
public static int getDay() {
return thisDayOfMonth();
} /**
* 返回当前小时,24小时制
*
* @return String
*/
public static int getHour() {
return thisHour(true);
} /**
* 返回当前毫秒数
*
* @return String
*/
public static long getCurrentMillisecond() {
return System.currentTimeMillis();
} /**
* 获取传入时间之后的多少天
*
* @param date 传入时间
* @param i 加几天
* @return 返回时间格式:yyyy-MM-dd HH:mm:ss
*/
public static String getAfterDay(Date date, int i) {
return offsetDay(date, i).toString();
} /**
* 获取几天前的时间 时间格式yyyy-MM-dd HH:mm:ss
*
* @param beforeDay
* @return 返回时间格式:yyyy-MM-dd HH:mm:ss
*/
public static String getBeforeDay(Date date, int beforeDay) {
return offsetDay(date, -beforeDay).toString();
} /**
* 获取传入时间之后多少给小时的时间
*
* @param date 传入时间
* @param i 加几个小时
* @return 返回时间格式:yyyy-MM-dd HH:mm:ss
*/
public static String getAfterHour(Date date, int i) {
return offsetHour(date, i).toString();
} /**
* 获取传入时间之前多少给小时的时间 时间格式yyyy-MM-dd HH:mm:ss
*
* @param beforeHour
* @return 返回时间格式:yyyy-MM-dd HH:mm:ss
*/
public static String getBeforeHour(Date date, int beforeHour) {
return offsetDay(date, -beforeHour).toString();
} /**
* 把日期字符串转换为具体日期刊
*
* @param dateString
* @param format 可以是yyyy-MM-dd HH:mm:ss,yyyyMMddHHmmss,yyyy-MM-dd任何需要得到的模式
* @return
*/
public static Date stringToDate(String dateString, String format) {
return parse(dateString, format);
} /**
* 获取某年最后一天日期,返回时间格式--例:"2019-12-31 23:59:59"
*
* @param date
* @return 返回时间格式--例:"2019-12-31 23:59:59"
*/
public static String getYearLastDay(Date date) {
return endOfYear(date).toString();
} /**
* 相差时间天数
*
* @param time1
* @param time2
* @return
*/
public static long getBetweenDay(String time1, String time2) {
Date date1 = parse(time1);
Date date2 = parse(time2);
return between(date1, date2, DateUnit.DAY);
} /**
* 相差时间秒数
*
* @param time1
* @param time2
* @return
*/
public static long getBetweenSecond(String time1, String time2) {
Date date1 = parse(time1);
Date date2 = parse(time2);
return between(date1, date2, DateUnit.SECOND);
} /**
* 毫秒数转换为"yyyy-MM-dd HH:mm:ss"格式时间
*
* @return String
*/
public static String getTimeForMillisecond(Long millisecond) {
return date(calendar(millisecond)).toString();
} /**
* 判断 当前时间在开始时间与结束时间之间
*
* @param startTime 开始时间
* @param endTime 结束时间
* @param judgeTime 需要判断的时间
* @return
*/
public static Boolean betweenIsStartAndEnd(String startTime, String endTime, String judgeTime) {
return isIn(parse(judgeTime), parse(startTime), parse(endTime));
} /**
* 判断 时间1是否大于时间2
*
* @return 计算错误返回0
*/
public static Boolean compareDateTime(String time1, String time2, String format) {
Date date1 = stringToDate(time1, format);
Date date2 = stringToDate(time2, format);
if (date1.getTime() > date2.getTime()) {
return true;
} else {
return false;
}
} /**
* 计算出开始时间和结束时间的毫秒差,判断是否超过设定的超时时间,返回描述时间和描述信息字符串
*
* @param overrideTime 设定的超时时间
* @param startTime 开始时间
* @param endTime 结束时间
* @return
*/
public static String logTimeout(long overrideTime, long startTime, long endTime) {
long s = endTime - startTime;
return s > overrideTime ? s + "ms,超时" : s + "ms";
} }

更多测试技术分享、学习资源以及一些其他福利可关注公众号:【Coding测试】获取:

java之封装日期工具类DateUtils的更多相关文章

  1. java 日期工具类DateUtils

      日期工具类DateUtils CreateTime--2017年5月27日08:48:00Author:Marydon DateUtils.java-对日期类的进一步封装 import java. ...

  2. JAVA中封装JSONUtils工具类及使用

    在JAVA中用json-lib-2.3-jdk15.jar包中提供了JSONObject和JSONArray基类,用于JSON的序列化和反序列化的操作.但是我们更习惯将其进一步封装,达到更好的重用. ...

  3. 日期工具类 DateUtils(继承org.apache.commons.lang.time.DateUtils类)

    /** * */ package com.dsj.gdbd.utils.web; import org.apache.commons.lang3.time.DateFormatUtils; impor ...

  4. 在JAVA中封装JSONUtil工具类及使用

    在JAVA中用json-lib-2.3-jdk15.jar包中提供了JSONObject和JSONArray基类,用于JSON的序列化和反序列化的操作.但是我们更习惯将其进一步封装,达到更好的重用. ...

  5. Java代码封装redis工具类

    maven依赖关系: <dependency> <groupId>redis.clients</groupId> <artifactId>jedis&l ...

  6. 在JAVA中封装JSONUtils工具类及使用 (转)

    import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; import java.util. ...

  7. Java日期工具类DateUtils详解(转)

    jar包 appache下的 common-lang3 一. 对指定的日期新增年.月.周.日.小时.分钟.秒.毫秒 public static Date addDays(Date date, int ...

  8. 【转】日期工具类DateUtils

    转自csdn,原作者:jzhf2012 package date.util; import java.text.ParseException; import java.text.SimpleDateF ...

  9. Java 日期工具类(日期,月份加减等)--转

    package util; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.C ...

  10. Java案例——日期工具类

    需求:定义一个日期工具类,包含两个方法,按日期转化成指定格式的字符串,把字符串解析为指定格式的日期 然后定义一个测试类测试 分析: 1.定义一个日期工具类 2.定义一个方法dateToString,用 ...

随机推荐

  1. Linux下如何在程序中获取某个命令执行的结果?【附源码】

    在工作中遇到一个问题,就是想获取某个函数执行之后打印的字符串信息. 这个功能应用场景挺多的, 特地整理了一下相关知识点分享给大家. 1. 使用临时文件 1) 使用shell的重定向 将命令输出重定向到 ...

  2. Linux 挂载设备

    手动挂载 挂载: # 创建挂载目录 sudo mkdir -p /path/to/mount # 挂载 sudo mount /dev/sdX1 /path/to/mount # 确认挂载 df -h ...

  3. 【Docker学习系列】Docker学习2-docker设置阿里云镜像加速器

    在上一篇中,我们学会了在centos中安装docer.我们知道,镜像都是外网的,镜像一般都是比较大的,因为种种原因,我们知道,从外网下载比较慢的.所以,本文,凯哥就介绍怎么将docker的镜像拉取设置 ...

  4. JVM笔记八-堆参数调优

    JVM垃圾收集器(Java Garbage Collection).本教程均在JDK1.8+HotSpot为例来讲解的. 先来看看Java7的: 编辑 ​ 再来看看Jva8的 编辑 ​ 从上图中我们可 ...

  5. Falcon Mamba: 首个高效的无注意力机制 7B 模型

    Falcon Mamba 是由阿布扎比的 Technology Innovation Institute (TII) 开发并基于 TII Falcon Mamba 7B License 1.0 的开放 ...

  6. Round #2022/12/10

    问题 D:城市大脑 题目描述 杜老师正在编写杭州城市大脑智能引擎.杭州的道路可以被抽象成为一幅无向图.每条路的初始速度都是 \(1\ m/s\).杜老师可以使用 \(1\) 块钱让任意一条路的速度提升 ...

  7. 初步认识uboot

    1. uboot下载地址 ftp://ftp.denx.de/pub/u-boot/

  8. Kubernetes DaemonSet 控制器(二十二)

    通过该控制器的名称我们可以看出它的用法:Daemon,就是用来部署守护进程的,DaemonSet用于在每个 Kubernetes 节点中将守护进程的副本作为后台进程运行,说白了就是在每个节点部署一个 ...

  9. Kubernetes ReplicaSet 控制器(十九)

    前面我们一起学习了 Pod 的原理和一些基本使用,但是在实际使用的时候并不会直接使用 Pod,而是会使用各种控制器来满足我们的需求,Kubernetes 中运行了一系列控制器来确保集群的当前状态与期望 ...

  10. Kubernetes集群证书过期解决办法

    问题现象 K8S集群证书过期后,会导无法创建Pod,通过kubectl get nodes也无法获取信息,甚至dashboard也无法访问. 一.确认K8S证书过期时间 查看k8s某一证书过期时间: ...