项目中经常会遇到时间格式的转化,值得庆幸的是springboot支持全局的时间格式配置。在你的配置文件中加入
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8
这个是json格式的时间格式统一规划,当然你也可以单独使用@JsonFormat注解。不过有时间还是会有一点不方便,比如你和数据库打交道,和别的组件打交道,格式可能不一样。那么你要自行转化,你可以用DateUtils工具或者Simpledateformate这个.废话少说,上代码。
package utils.com;
import java.text.ParseException;
import java.util.Date;
import org.apache.commons.lang3.time.DateFormatUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* 日期和时间处理工具类
*
* @author 疾风
* 2016年10月14日
*/
public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
private static final Logger logger = LoggerFactory.getLogger(DateUtils.class);
private static String[] parsePatterns = {
"yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd HH:mm", "yyyy-MM",
"yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm", "yyyy/MM",
"yyyy.MM.dd", "yyyy.MM.dd HH:mm:ss", "yyyy.MM.dd HH:mm", "yyyy.MM"};
/** 日期转字符串格式
* @param pattern 时间格式 yyyy-MM-dd
* @return 字符串时间格式
*/
public static String getDate(Date date, String pattern) {
return DateFormatUtils.format(date, pattern);
}
/**
* 日期型字符串转化为日期 格式
* { "yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd HH:mm",
* "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm",
* "yyyy.MM.dd", "yyyy.MM.dd HH:mm:ss", "yyyy.MM.dd HH:mm" }
*/
public static Date parseDate(String str) {
try {
return parseDate(str, parsePatterns);
} catch (ParseException e) {
logger.error("格式化时间出错");
return null;
}
}
/**
* 获取过去的天数
* @param date
* @return
*/
public static long pastDays(Date date) {
long t = new Date().getTime() - date.getTime();
return t/(24*60*60*1000);
}
/**
* 转换为时间(天,时:分:秒.毫秒)
* @param timeMillis 时间毫秒数
* @return
*/
public static String formatDateTime(long timeMillis){
long day = timeMillis/(24*60*60*1000);
long hour = (timeMillis/(60*60*1000)-day*24);
long min = ((timeMillis/(60*1000))-day*24*60-hour*60);
long s = (timeMillis/1000-day*24*60*60-hour*60*60-min*60);
long sss = (timeMillis-day*24*60*60*1000-hour*60*60*1000-min*60*1000-s*1000);
String result = (day > 0 ? day+",":"")+hour+":"+min+":"+s+"."+sss;
logger.info(result);
return result;
}
/**
* 获取两个日期之间的天数
*
* @param before 之前
* @param after 截止日期
* @return 天数
*/
public static double getDistanceOfTwoDate(Date before, Date after) {
long beforeTime = before.getTime();
long afterTime = after.getTime();
double result = (afterTime - beforeTime) / (1000 * 60 * 60 * 24);
logger.info(String.valueOf("两个时间相隔:" + result));
return result;
}
}
这个实在DateUtils的基础上封装的工具。提供了基础的转化和比较时间差等方法,默认的转化,提供了常用的几种时间格式。亲测比较好使!
相关推荐
java 时间工具类 java 时间工具类java 时间工具类java 时间工具类java 时间工具类 java 时间工具类java 时间工具类java 时间工具类java 时间工具类 java 时间工具类java 时间工具类java 时间工具类java 时间工具类 ...
[工具类] 获得汉字拼音首字母的java工具类.java.txt [工具类] 获取绝对路径 .java.txt [工具类] 记录log日志文件的工具类 .java.txt [工具类] 连接数据库的工具类 .java.txt [工具类] 使用Java程序来实现HTTP文件的...
使用java工具类可有效的提高开发效率! 没有CSDN积分的朋友到这里源头下载:http://www.javacs.cn/bbs/thread-382-1-1.html 感谢支持 [工具类] CookieCounter .java.txt [工具类] 验证码img .jsp.txt [工具类] Java中...
Java工具类集合是Java开发中不可或缺的一部分,它们提供了一系列便捷的方法,帮助开发者高效地处理各种常见任务。在Java中,工具类通常被组织在各种包下,如`java.util`、`java.lang`、`java.io`等。下面将详细介绍...
4.[工具类] 时间工具TimeUtil.java 5.[工具类] 通信服务端simpleServer 6.[工具类] 使用Java程序来实现HTTP文件的队列下载 .java 7.[工具类] 文件操作工具类 .java 8.[工具类] 序列化保存为XML文件的工具类 .java 9....
java 时间工具类 java 时间工具类java 时间工具类 java 时间工具类java 时间工具类 java 时间工具类java 时间工具类 java 时间工具类java 时间工具类 java 时间工具类
java 时间 datatime 工具类
了解并熟练运用这些工具类是提升Java编程能力的关键步骤之一。在实际开发中,我们经常会引用Apache Commons Lang、Apache Commons IO这样的开源库,它们提供了丰富的工具类,极大地丰富了Java的标准库功能。
本资源名为“Java工具类合集”,显然是一份集合了多种功能的Java工具类库,可能包含了一系列开源框架中的实用工具类。 首先,我们可以从“mysql版本”这个标签推测,这个合集中可能包含了与MySQL数据库交互相关的...
通过使用该工具类,可以大大提高开发效率,节约时间成本。 3、该工具类使用非常简单。只需要复制数据库列名,支持多列复制,执行工具类即可生成对应的Java字段代码。 4、优点:使用代码生成驼峰形式的字段,可以...
本篇将围绕Java中的日期工具类和时间工具类展开讨论,同时会涉及到日期时间的格式化。 首先,Java 8之前,我们主要依赖`java.util.Date`和`java.text.SimpleDateFormat`这两个类来处理日期和时间。`Date`类用于表示...
以上只是Java工具类的一部分,这些工具类的使用能极大地提高开发效率,减少代码重复,使代码更加简洁和易于维护。通过这些工具类,开发者能够快速地处理各种日常任务,将精力集中在核心业务逻辑上。
总之,Java工具类是提高开发效率的关键,它们封装了常见的操作,减少了代码重复,提高了代码可读性和维护性。"一些java常用的工具类"可能涵盖了上述的多种功能,为开发者提供了方便快捷的编程体验。通过理解和利用...
Java工具类是编程中不可或缺的一部分,它们提供了许多实用的功能,帮助开发者提高代码的效率和可维护性。在Java中,工具类通常包含了各种通用的方法,适用于多种场景,减少了重复编码的工作。以下是一些主要的Java...
本篇文章将深入探讨如何在Java中实现一个用于处理HTTPS请求的工具类。 首先,要实现HTTPS请求,我们需要导入Java的`java.net`和`javax.net.ssl`包,这两个包提供了处理网络连接和SSL/TLS安全协议的类。以下是一些...
在Java编程语言中,工具类(Utility Class)是包含各种静态方法的类,这些方法用于执行特定任务,如数据操作、文件处理、数学计算等。它们通常不包含实例变量,只提供静态方法服务,帮助开发者提高代码的复用性和...
Java工具类是开发过程中不可或缺的一部分,它们提供了许多实用的功能,帮助开发者提高代码的效率和可维护性。Apache Commons Lang和BeanUtils是两个非常著名的Java工具库,由Apache软件基金会开发和维护。这两个库...