轮子: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 ...
随机推荐
- 重复代码的克星,高效工具 VSCode snippets 的使用指南
为什么要用 snippets(代码段)? 不管你使用何种编程语言,在我们日常的编码工作中,都会存在有大量的重复代码编写,例如: 日志打印: console.log,log.info('...') 输出 ...
- 用go实现常见的数据结构
目录 1 golang常见数据结构实现 1.1 链表 1.2 可变数组 1.3 栈和队列 1.3.1 原生切片实现栈和队列 1.3.1.1 切片原生栈实现 1.3.1.2 切片原生队列实现 1.3.2 ...
- HDOJ-6685(暴力+思维)
Rikka With Coin HDOJ-6685 主要的思想如下: 首先10元的硬币最多只会用一个,如果用了两个,直接替换成一个10元.一个20元一定不亏. 20元的硬币最多只会用三个,如果用了四个 ...
- 基于Hi3559AV100 RFCN实现细节解析-(3)系统输入VI分析一 :
下面随笔系列将对Hi3559AV100 RFCN实现细节进行解析,整个过程涉及到VI.VDEC.VPSS.VGS.VO.NNIE,其中涉及的内容,大家可以参考之前我写的博客: Hi3559AV100的 ...
- 普通的一天,说一个普通的XML
什么是XML XML全称是Extensible Markup Language,译为"可扩展标记语言",常用来存储和传输信息. XML的结构 我们经常看到的XML文件是这个样子的: ...
- [GXYCTF2019]Ping Ping Ping 1
进入界面 根据提示进行ping信号 看到网页的内容就想到经典的Linux命令执行,使用命令执行的管道符 " | "尝试列出文件 FLAG应该在Flag.php里面 构造play ...
- Mybatis中由于${}直接注入引发的问题
一.问题引入 我们先来看这段代码,我想从取值为${category}的表中查询全部信息. @Mapper public interface CategoryMapper { @Select(" ...
- P1739_表达式括号匹配(JAVA语言)
思路:刚开始想用stack,遇到'('就push,遇到')'就pop,后来发现其实我们只需要用到栈里'('的个数,所以我们用一个变量统计'('的个数就好啦~ 题目描述 假设一个表达式有英文字母(小写) ...
- IDApro 快捷键
https://www.hex-rays.com/wp-content/static/products/ida/idapro_cheatsheet.html File Operations Parse ...
- vue文本滚动组件
看了好多网上的文本组件,发现好多都有这样那样的问题:特别是滚动的时候失真的感觉,今天整合了文本滚动的方式用CSS的 animation写出一套组件:VUE项目直接用.感觉有用的朋友关注下 效果图, ...