Java 中DateUtils日期工具类的实例详解

 更新时间:2017年08月02日 11:07:27   作者:nicewuranran  
这篇文章主要介绍了Java 中DateUtils日期工具类的实例详解的相关资料,有时候开发java项目使用日期类型,这里介绍下日期工具类,需要的朋友可以参考下

Java 中DateUtils日期工具类的实例详解

介绍

在java中队日期类型的处理并不方便,通常都需要借助java.text.SimpleDateFormat类来实现日期类型
和字符串类型之间的转换,但是在jdk1.8之后有所改善,jdk1.7以及之前的版本处理日期类型并不方便,
可以借助Joda Time组件来处理,尤其是日期类型的一些数学操作就更是不方便。

java代码

/**
 * 
 * 日期工具类 java对日期的操作一直都很不理想,直到jdk1.8之后才有了本质的改变。
 * 如果使用的是jdk1.8之前版本开发的话,推荐使用Joda Time组件。
 * 
 * 特别备注:unix的时间戳单位是秒
 * 
 * @author xuyi3
 * @2016年7月13日 @下午2:01:00
 * @DateUtils
 * @功能说明:
 * @春风十里不如你
 * @备注
 */
public class DateUtils {

  /** 日志对象 */
  private static final Logger logger = LoggerFactory.getLogger(DateUtils.class);

  /** 年-月-日 时:分:秒 显示格式 */
  // 备注:如果使用大写HH标识使用24小时显示格式,如果使用小写hh就表示使用12小时制格式。
  public static String DATE_TO_STRING_DETAIAL_PATTERN = "yyyy-MM-dd HH:mm:ss";

  /** 年-月-日 显示格式 */
  public static String DATE_TO_STRING_SHORT_PATTERN = "yyyy-MM-dd";

  private static SimpleDateFormat simpleDateFormat;

  /**
   * Date类型转为指定格式的String类型
   * 
   * @param source
   * @param pattern
   * @return
   */
  public static String DateToString(Date source, String pattern) {
    simpleDateFormat = new SimpleDateFormat(pattern);
    return simpleDateFormat.format(source);
  }

  /**
   * 
   * unix时间戳转为指定格式的String类型
   * 
   * 
   * System.currentTimeMillis()获得的是是从1970年1月1日开始所经过的毫秒数
   * unix时间戳:是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒
   * 
   * @param source
   * @param pattern
   * @return
   */
  public static String timeStampToString(long source, String pattern) {
    simpleDateFormat = new SimpleDateFormat(pattern);
    Date date = new Date(source * 1000);
    return simpleDateFormat.format(date);
  }

  /**
   * 将日期转换为时间戳(unix时间戳,单位秒)
   * 
   * @param date
   * @return
   */
  public static long dateToTimeStamp(Date date) {
    Timestamp timestamp = new Timestamp(date.getTime());
    return timestamp.getTime() / 1000;

  }

  /**
   * 
   * 字符串转换为对应日期(可能会报错异常)
   * 
   * @param source
   * @param pattern
   * @return
   */
  public static Date stringToDate(String source, String pattern) {
    simpleDateFormat = new SimpleDateFormat(pattern);
    Date date = null;
    try {
      date = simpleDateFormat.parse(source);
    } catch (ParseException e) {
      logger.error("字符串转换日期异常", e);
    }
    return date;
  }

  /**
   * 获得当前时间对应的指定格式
   * 
   * @param pattern
   * @return
   */
  public static String currentFormatDate(String pattern) {
    simpleDateFormat = new SimpleDateFormat(pattern);
    return simpleDateFormat.format(new Date());

  }

  /**
   * 获得当前unix时间戳(单位秒)
   * 
   * @return 当前unix时间戳
   */
  public static long currentTimeStamp() {
    return System.currentTimeMillis() / 1000;
  }

  //待补充
}

总结

掌握了解jdk1.8的新特性和学会使用优秀的开源组件来达到自己快速高效开发的目的。

以上就是java 工具类的详解,如有疑问请留言或者到本站社区交流讨论,本站关于java的开发文章还有很多,请大家多多搜索查阅,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • Java Optional用法面试题精讲

    Java Optional用法面试题精讲

    这篇文章主要为大家介绍了Java Optional用法面试题精讲,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • MyBatis中的配置文件详解

    MyBatis中的配置文件详解

    在 MyBatis 中,配置文件分为 全局配置文件(核心配置文件)和映射配置文件,本文给大家介绍MyBatis中的配置文件相关知识,感兴趣的朋友一起看看吧
    2023-10-10
  • JPA中EntityListeners注解的使用详解

    JPA中EntityListeners注解的使用详解

    这篇文章主要介绍了JPA中EntityListeners注解的使用详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01
  • IDEA不编译除了.java之外的文件的解决办法(推荐)

    IDEA不编译除了.java之外的文件的解决办法(推荐)

    这篇文章主要介绍了IDEA不编译除了.java之外的文件的解决办法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • springboot如何实现自动装配源码解读

    springboot如何实现自动装配源码解读

    这篇文章主要介绍了springboot如何实现自动装配源码赏析,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • IDEA 2020.1 版自动导入MAVEN依赖的方法(新版MAVEN无法自动导入/更新POM依赖、MAVEN设置自动更新、自动更新快捷键)

    IDEA 2020.1 版自动导入MAVEN依赖的方法(新版MAVEN无法自动导入/更新POM依赖、MAVEN设置自动更

    这篇文章主要介绍了IDEA 2020.1 版自动导入MAVEN依赖的方法(新版MAVEN无法自动导入/更新POM依赖、MAVEN设置自动更新、自动更新快捷键),需要的朋友可以参考下
    2020-08-08
  • Java Io File文件操作基础教程

    Java Io File文件操作基础教程

    这篇文章主要介绍了Java Io File文件操作,在这里需要注意File只能访问文件以及文件系统的元数据。如果你想读写文件内容,需要使用FileInputStream、FileOutputStream或者RandomAccessFile,需要的朋友可以参考下
    2022-05-05
  • SpringMVC 通过commons-fileupload实现文件上传功能

    SpringMVC 通过commons-fileupload实现文件上传功能

    这篇文章主要介绍了SpringMVC 通过commons-fileupload实现文件上传,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • Spring扩展之基于HandlerMapping实现接口灰度发布实例

    Spring扩展之基于HandlerMapping实现接口灰度发布实例

    这篇文章主要介绍了Spring扩展之基于HandlerMapping实现接口灰度发布实例,灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式,灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度,需要的朋友可以参考下
    2023-08-08
  • SpringMVC的概念以及快速入门示例

    SpringMVC的概念以及快速入门示例

    这篇文章主要介绍了SpringMVC的概念以及快速入门示例,SpringMVC 已经成为目前最主流的MVC框架之一,它通过一套注解,让一个简单的 Java 类成为处理请求的控制器,而无须实现任何接口,需要的朋友可以参考下
    2023-05-05

最新评论