轮子:DateUtil.java
日期工具类
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateUtil {
public static final String DATE = "yyyy/MM/dd";
public static final String Date = "yyyy-MM-dd";
public static final String TIME = "HH:mm:ss";
public static final String DATE_TIME = "yyyy/MM/dd HH:mm:ss";
public static final String Date_TIME = "yyyy-MM-dd HH:mm:ss";
public static final String DateTime = "yyyyMMddHHmmss";
/**
* 自定义时间格式化
* @param date
* @param simpleDateFormat
* @return
*/
public static String customFormat(Date date, String simpleDateFormat){
SimpleDateFormat sdf = new SimpleDateFormat(simpleDateFormat);
return sdf.format(date);
}
/**
* 获取当前时间 yyyy-MM-dd HH:mm:ss
* @return 字符类型时间
*/
public static String nowFormatStr(){
return customFormat(new Date(), Date_TIME);
}
/**
* 获取当前时间 yyyyMMddHHmmss
* @return 字符类型时间
*/
public static String nowFormatStrTwo(){
return customFormat(new Date(), DateTime);
}
/**
* 判断日期大小
* 前者小 返回-1
* 前者大 返回1
* 相等 返回0
* @param date1
* @param date2
* @return
*/
public static int compareTo(Date date1, Date date2){
return date1.compareTo(date2);
}
/**
* 判断与当前时间戳的相差的毫秒数
* @return
*/
public static long timestampDifferByNow(long timestamp){
long millis = System.currentTimeMillis();
return Math.abs(timestamp-millis);
}
/**
* 判断指定的时间戳与当前时间是否超时
* @param timestamp
* @param second 在有效期内的秒数
* @return
*/
public static boolean judgeTimeOutBySecond(long timestamp, long second){
long differ = timestampDifferByNow(timestamp);
return differ/1000 >= second;
}
/**
* 判断指定的时间戳与当前时间是否超时
* @param timestamp
* @param MS 毫秒
* @return
*/
public static boolean judgeTimeOutByMS(long timestamp, long MS){
long differ = timestampDifferByNow(timestamp);
return differ >= MS;
}
/**
* 获取两个Date之间相差的天数
* @param begintime
* @param endtime
* @return
*/
public static Double getDaysDiffer(Date begintime, Date endtime) {
long time01 = begintime.getTime();
long time02 = endtime.getTime();
long diff = Math.abs(time01 - time02)/1000;
return diff / 86400.0;
}
/**
* 获取两个Date之间相差的天数(向上取整)
* @param begintime
* @param endtime
* @return
*/
public static Integer getDaysCeilDiffer(Date begintime, Date endtime) {
Double days = getDaysDiffer(begintime, endtime);
return Double.valueOf(Math.ceil(days)).intValue();
}
/**
* 获取两个Date之间相差的天数(向下取整)
* @param begintime
* @param endtime
* @return
*/
public static Integer getDaysFloorDiffer(Date begintime, Date endtime) {
Double days = getDaysDiffer(begintime, endtime);
return Double.valueOf(Math.floor(days)).intValue();
}
}
记录快速开发所需的轮子,保持更新中
轮子:DateUtil.java的更多相关文章
- JAVA 日期格式工具类DateUtil.java
DateUtil.java package pers.kangxu.datautils.utils; import java.text.SimpleDateFormat; import java.ut ...
- 日期工具类 - DateUtil.java
日期工具类,提供对日期的格式化和转换方法.获取区间日期.指定日期.每月最后一天等. 源码如下:(点击下载 -DateUtil.java.commons-lang-2.6.jar ) import ja ...
- 存在即合理,重复轮子orm java版本
1,业务描述前序? 需求来源于,公司的运营部门.本人所在公司(私营,游戏行业公司),从初创业,我就进入公司,一直致力于服务器核心研发. 公司成立块3年了,前后出产了4款游戏,一直在重复的制造公司游戏对 ...
- 解决Apache CXF 不支持传递java.sql.Timestamp和java.util.HashMap类型问题
在项目中使用Apache开源的Services Framework CXF来发布WebService,CXF能够很简洁与Spring Framework 集成在一起,在发布WebService的过程中 ...
- Java中的操作日期的工具类
import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; imp ...
- Java基础知识强化92:日期工具类的编写和测试案例
1. DateUtil.java,代码如下: package cn.itcast_04; import java.text.ParseException; import java.text.Simpl ...
- Java Utils工具类大全(转)
源码和jar见:https://github.com/evil0ps/utils #Java Utils --- 封装了一些常用Java操作方法,便于重复开发利用. 另外希望身为Java牛牛的你们一起 ...
- Java编程的逻辑 (76) - 并发容器 - 各种队列
本系列文章经补充和完善,已修订整理成书<Java编程的逻辑>,由机械工业出版社华章分社出版,于2018年1月上市热销,读者好评如潮!各大网店和书店有售,欢迎购买,京东自营链接:http: ...
- Android工具类 DateUtil,可以用它方便的进行日期的操作
本文转载自:http://blog.csdn.net/xuduzhoud/article/details/27526177 全部代码如下: DateUtil.java package com.exam ...
随机推荐
- linux 几种传输文件的方式
SimpleHTTPServer + wget 如果线上可以直连线下的话,在线上使用wget访问线下的文件服务器: web的方法,比较灵活,使用完要尽快关闭这个服务: cd temp temp$ py ...
- 剑指 Offer 66. 构建乘积数组 + 思维
剑指 Offer 66. 构建乘积数组 Offer_66 题目描述 题解分析 java代码 package com.walegarrett.offer; /** * @Author WaleGarre ...
- 剑指 Offer 55 - II. 平衡二叉树 + 平衡二叉树(AVL)的判断
剑指 Offer 55 - II. 平衡二叉树 Offer_55_2 题目描述 方法一:使用后序遍历+边遍历边判断 package com.walegarrett.offer; /** * @Auth ...
- c#(NPOI)DataTable导出execl,execl(支持解析公式)导入DataTable
NPOI(C#)DataTable导出execl using NPOI.HSSF.UserModel; using NPOI.SS.UserModel; using NPOI.XSSF.UserMod ...
- Codeforces Round #699 (Div. 2)
A Space Navigation #include <bits/stdc++.h> using namespace std; typedef long long LL; #define ...
- C# 基础 - 日志捕获二使用 log4net
引入 log4net.dll 项目->添加->新建项->应用程序配置文件,命名为 log4net.config,并把属性的复制到输出目录设置为 如果较新则复制,后续客户端需要读取在 ...
- MySQL中如何查询中位数
员工薪水中位数 题目描述: 预期答案: 解法1 既然是求解中位数,我们首先想到的是根据中位数的定义进行求解:奇数个数字时,中位数是中间的数字:偶数个数字时,中位数中间两个数的均值.本题不进行求解均值, ...
- sitemesh简单介绍
SiteMesh 是一个网页布局和修饰的框架,利用它可以将网页的内容和页面结构分离,以达到页面结构共享的目的. Sitemesh是由一个基于Web页面布局.装饰以及与现存Web应用整合的框架. 它能帮 ...
- 局部莫兰指数的计算(运用ArcMap)
做任务时需要运用到局部莫兰指数,卡在用Python计算的思路上好久,最后发现可以用ArcGIS进行处理,步骤简单易懂. 主要步骤为: 1.读入数据(一定要为shp文件),对于用ecognition直接 ...
- Docker SDK api操作Docker
下载包 go get "github.com/docker/docker/api/types" go get "github.com/docker/docker/clie ...