dateutils java_DateUtils.java
DateUtils.java
import java.sql.Timestamp;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.apache.commons.lang3.time.DateFormatUtils;
/**
* 日期工具类, 继承org.apache.commons.lang.time.DateUtils类
* @author liupd
* @version 2015-10-12
* import commons-lang3 package
*
*
*
org.apache.commons
*
commons-lang3
*
3.1
*
*/
public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
private static String[] parsePatterns = { "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)
*/
public static String getDate() {
return getDate("yyyy-MM-dd");
}
/**
* 得到当前日期字符串 格式(yyyy-MM-dd) pattern可以为:"yyyy-MM-dd" "HH:mm:ss" "E"
*/
public static String getDate(String pattern) {
return DateFormatUtils.format(new Date(), pattern);
}
/**
* 得到日期字符串 默认格式(yyyy-MM-dd) pattern可以为:"yyyy-MM-dd" "HH:mm:ss" "E"
*/
public static String formatDate(Date date, Object... pattern) {
String formatDate = null;
if (pattern != null && pattern.length > 0) {
formatDate = DateFormatUtils.format(date, pattern[0].toString());
} else {
formatDate = DateFormatUtils.format(date, "yyyy-MM-dd");
}
return formatDate;
}
/**
* 得到日期时间字符串,转换格式(yyyy-MM-dd HH:mm:ss)
*/
public static String formatDateTime(Date date) {
return formatDate(date, "yyyy-MM-dd HH:mm:ss");
}
/**
* 得到当前时间字符串 格式(HH:mm:ss)
*/
public static String getTime() {
return formatDate(new Date(), "HH:mm:ss");
}
/**
* 得到当前日期和时间字符串 格式(yyyy-MM-dd HH:mm:ss)
*/
public static String getDateTime() {
return formatDate(new Date(), "yyyy-MM-dd HH:mm:ss");
}
/**
* 得到当前年份字符串 格式(yyyy)
*/
public static String getYear() {
return formatDate(new Date(), "yyyy");
}
/**
* 得到当前月份字符串 格式(MM)
*/
public static String getMonth() {
return formatDate(new Date(), "MM");
}
/**
* 得到当天字符串 格式(dd)
*/
public static String getDay() {
return formatDate(new Date(), "dd");
}
/**
* 得到当前星期字符串 格式(E)星期几
*/
public static String getWeek() {
return formatDate(new Date(), "E");
}
/**
* 日期型字符串转化为日期 格式
* { "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(Object str) {
if (str == null){
return null;
}
try {
return parseDate(str.toString(), parsePatterns);
} catch (ParseException e) {
return null;
}
}
/**
* 获取过去的天数
* @param date
* @return
*/
public static long pastDays(Date date) {
long t = new Date().getTime()-date.getTime();
return t/(24*60*60*1000);
}
public static Date getDateStart(Date date) {
if(date==null) {
return null;
}
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
date= sdf.parse(formatDate(date, "yyyy-MM-dd")+" 00:00:00");
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}
public static Date getDateEnd(Date date) {
if(date==null) {
return null;
}
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
date= sdf.parse(formatDate(date, "yyyy-MM-dd") +" 23:59:59");
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}
/**
* 判断字符串是否是日期
* @param timeString
* @return
*/
public static boolean isDate(String timeString){
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd");
format.setLenient(false);
try{
format.parse(timeString);
}catch(Exception e){
return false;
}
return true;
}
/**
* 格式化时间
* @param timestamp
* @return
*/
public static String dateFormat(Date timestamp){
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return format.format(timestamp);
}
/**
* 获取系统时间Timestamp
* @return
*/
public static Timestamp getSysTimestamp(){
return new Timestamp(new Date().getTime());
}
/**
* 获取系统时间Date
* @return
*/
public static Date getSysDate(){
return new Date();
}
/**
* 生成时间随机数
* @return
*/
public static String getDateRandom(){
String s=new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date());
return s;
}
/**
* @param args
* @throws ParseException
*/
public static void main(String[] args) throws ParseException {
// System.out.println(formatDate(parseDate("2010/3/6")));
// System.out.println(getDate("yyyy年MM月dd日 E"));
// long time = new Date().getTime()-parseDate("2012-11-19").getTime();
// System.out.println(time/(24*60*60*1000));
}
}
dateutils java_DateUtils.java相关推荐
- Java代码格式化算法_一个时间格式化的工具类:TimeUtil
源代码如下: import android.content.Context; import android.text.TextUtils; import android.text.format.Dat ...
- java 跳过法定节假日和双休
注意:五一假期的5天规则还需要算一下.直接拿过去即可使用 import java.text.ParseException; import java.text.SimpleDateFormat; imp ...
- java项目常用的工具类
前言 在开发过程中,我们会遇到很多繁琐或者棘手的问题,但是,这些问题往往会存在一些便捷的工具类,来简化我们的开发,下面是我工作中经常使用到的工具类 常用工具类 日期工具类 import java.te ...
- java监测服务器信息(cpu,内存,运行时间等),springboot监控服务器信息
目录 1.添加工程依赖 2. 依赖工具类 3. 使用 PS:工具类代码 model Cpu.java Jvm.java Mem.java Sys.java SysFile.java utils Ari ...
- Java 每年节假日获取
Java 每年节假日获取 参考链接 以下实现参考本篇文章 说明 自动获取每年节假日,因为国家每一年的假期可能不一样,是人为设定的:所以需要每年生成一次或者在项目中写定时任务实现.因为我这里的需求稍微简 ...
- Java格式化日期 微秒
Java格式化日期 微秒 Date.LocalDateTime格式化微秒值 Date.LocalDateTime互转 本文主要讲述Java日期格式化及格式化日期到微秒 Date.LocalDateTi ...
- java时间格式处理
一.根据当前时间,获取具体的时刻的时间 import java.text.SimpleDateFormat; import java.util.Date;public class getTime {p ...
- java 实现word转pdf,并且实现内容替换,乱码处理,去水印
1.引入依赖 aspose-words的包需要从官网下载 <dependency><groupId>fakepath</groupId><artifactId ...
- java获取当前日期对应的时间范围
java日期操作类,获取当前时间的一些范围属性. 包含开始时间结束时间,开始和结束日期也可以单独来使用. 当前季度的时间范围 昨天的时间范围 前月份的时间范围 上个月的时间范围 上个季度的时间范围 当 ...
- java dsl_我使用DSL编写SQL的一个Java实现
1.导读 什么是DSL?领域特定语言(Domain Specific language)通常被定义为一种特别针对某类特殊问题的计算机语言,它不打算解决其领域外的问题.了解更多 2.你使用JDBC来 存 ...
最新文章
- 核函数K(kernel function)
- EF 4.1+MVC3+Jquery Ajax+Json.Net+JqueryUI+IUnitOfWork+Repository 学习DEMO(暂停更新)
- 78.Zabbix监控Nginx
- python标准日期正则表达式_Python 正则表达式验证传统日期
- iris数据_Python数据分析02-Iris-直方图与KDE
- latex减少图片和图片解释文字之间的距离
- 【Java面试系列】Java微服务面试题
- 关于浏览器缓存,版本更新问题
- 回答朋友关于美团点评业务线工作体验
- cad延伸快捷键_CAD绘图大师都在用的46组快捷键,高效绘图必备
- 古典密码分析(冗余度,唯一解距离,语言统计,重合指数)
- oracle 11g Dataguard 之 Remote_Transport_user
- uniapp开发h5微信授权登录(详细教程)
- 反应式流 Java 9 Flow实战
- cisco路由器忘记密码恢复
- 北大青鸟所有学习资料下载地址
- Ubuntu安装落雪音乐LX Music
- 共享汽车倒下了,为何我感觉心中的石头终于落地?
- 为什么宝宝本来发高烧却手脚冰凉呢?
- CINTA作业七:同态
热门文章
- 使用ajax实现文件上传功能
- 基于CarMaker的C-NCAP主动安全系统试验仿真(四)
- 浏览器嗅探器检测(BrowserDetect.js)程序神器使用
- linux sh 按键精灵,按键精灵脚本代码教程
- 毕设项目 - 基于SSM的音乐网站(含源码+论文)
- 90天吃透阿里P8推荐的625页Java编程兵书pdf,直接入职阿里定级P6
- excel表格打开是乱码要如何解决?
- xp 计算机桌面图标不见,萝卜XP系统桌面图标全部消失了如何解决
- win10最常用dos命令以及win+R即可运行的命令
- 3个关于HR的OKR的优秀案例