业务逻辑中遇到日期的相关操作,整理一下小做总结

日期操作离不开 java.util.Calendar 和 java.util.Date ,实体类中日期字段设计也可能用到java.sql.Date。但目前使用中,Calendar为主,Date辅助,而且Date中的许多方法已过时,Calendar可99%替代,1%也是类型转换时的临时需要。这里仅结合实际使用简单汇总如下:

     // 获取当前各自日期实例
Calendar calendar = Calendar.getInstance();
Date date = new Date(); // 相互转换
Date temp = calendar.getTime();
calendar.setTime(date); // 设置时分秒,Calendar完全替换Date
calendar.set(Calendar.HOUR_OF_DAY,9);
calendar.set(Calendar.MINUTE,30);
calendar.set(Calendar.SECOND,0); // 时间比较,Calendar完全替换Date+1
Calendar calendar1 = Calendar.getInstance();
// before/after参数可为Calendar或Date
Boolean tem = calendar.before(calendar);
Boolean tem1 = calendar.after(calendar);
Boolean tem2 = calendar.after(date); // 日期格式转换,commons-lang
// 日期转字符串 Date--String
String dateStr = DateFormatUtils.format(date,"yyyy-MM-dd HH:MM:SS");
// 字符串转日期 String--Date
String[] pattern = new String[]{"yyyy-MM","yyyyMM","yyyy/MM",
"yyyyMMdd","yyyy-MM-dd","yyyy/MM/dd",
"yyyyMMddHHmmss",
"yyyy-MM-dd HH:mm:ss",
"yyyy/MM/dd HH:mm:ss"};
String test = "2018-5-22";
Date date1 = DateUtils.parseDate(test, pattern);

以上为当前业务中所用到的及常用的一些基本方法,后续用到再补充

最新文章

  1. java 多线程 Synchronized方法和方法块 synchronized(this)和synchronized(object)的理解
  2. XSS攻击及防御
  3. LinkedList详细分析
  4. Java继承,多态,组合应用
  5. css让图片作为按钮的背景并且大小合适
  6. HDU 4417 Super Mario(主席树求区间内的区间查询+离散化)
  7. QCon 2015 阅读笔记 - 其他精选主题
  8. UVa 12063 (DP) Zeros and Ones
  9. cocos2d-x的初步学习二十一之iosandroid跨平台环境配置
  10. Gridview中将某列的背景设置为绿色
  11. 卷积神经网络CNN与深度学习常用框架的介绍与使用
  12. OC版贪吃蛇
  13. 前端学习:html基础学习二
  14. Decoder is not a @Sharable handler, so can't be added or removed multiple times
  15. [ZJOI2006]超级麻将(可行性dp)
  16. SpringCloud无废话入门04:Hystrix熔断器及监控
  17. Tarjan模板题——牛的舞会
  18. Java多线程习题 ===重点 ,错题积累
  19. LightOJ - 1027 Dangerous Maze 期望
  20. 《MySQL技术内幕:InnoDB存储引擎(第2版)》书摘

热门文章

  1. Jquery easyui-combobox 的一个BUG
  2. Flume-NG + HDFS + HIVE日志收集分析
  3. UVA 1456 六 Cellular Network
  4. poj 1018 Communication System
  5. C语言socket编程--每日签到
  6. h.264直接预测
  7. <s:iterator> 序号
  8. JPEG概述和头分析(C源码)
  9. 【Demo 0006】Java基础-类多态性
  10. git常用命令学习(转)
  11. 宽客的人&&事件映射
  12. STM8程序在IAR中报错 unable to allocate space for sections
  13. 如何退出 Vim
  14. 安装配置Oracle 12c RAC
  15. 线程停止与volatile
  16. leetcode — validate-binary-search-tree
  17. .NET [MVC] 利用特性捕捉异常
  18. java 项目打jar包,用cmd运行,并且编写运行脚本
  19. Visual GC提示"不受此JVM支持“解决方案(配置jstatd)
  20. [daily] emacs显示file name buffer的全路径