LocalDateTime
@Component
public class DateUtil { public final static String EMPTY_SRING = "";
public final static String DEFAULT_PATTERN = "yyyy-MM-dd HH:mm:ss";
public final static long DATE_TIME = * * * ;
public final static long HOUR_TIME = * * ;
public final static long MINUTE_TIME = * ;
public LocalDateTime parseDate(String timeStr) {
// return new LocalDateTimeStringConverter().fromString(timeStr);
DateTimeFormatter pattern =
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); //严格按照ISO yyyy-MM-dd验证,03写成3都不行
return LocalDateTime.parse(timeStr, pattern);
} public String currentDateDay() {
LocalDate ldt = LocalDate.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
return ldt.format(formatter);
} public String currentDateTime() {
LocalDateTime ldt = LocalDateTime.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
return ldt.format(formatter);
} public String afterCurrentDate(LocalDateTime dt, int mount, int unit) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime ldt = LocalDateTime.now();
if (dt != null) {
ldt = dt;
}
if (unit == ConstUtil.UNIT_SECOND) {
return ldt.plusSeconds(mount).format(formatter);
} else if (unit == ConstUtil.UNIT_MINUTE) {
return ldt.plusMinutes(mount).format(formatter);
} else if (unit == ConstUtil.UNIT_HOUR) {
return ldt.plusHours(mount).format(formatter);
} else if (unit == ConstUtil.UNIT_DAY) {
return ldt.plusDays(mount).format(formatter);
} else if (unit == ConstUtil.UNIT_WEEK) {
return ldt.plusWeeks(mount).format(formatter);
} else if (unit == ConstUtil.UNIT_MONTH) {
return ldt.plusMonths(mount).format(formatter);
} else if (unit == ConstUtil.UNIT_YEAR) {
return ldt.plusYears(mount).format(formatter);
}
return ldt.format(formatter);
} public String beforeCurrentDate(LocalDateTime dt, int mount, int unit) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime ldt = LocalDateTime.now();
if (dt != null) {
ldt = dt;
}
if (unit == ConstUtil.UNIT_SECOND) {
return ldt.minusSeconds(mount).format(formatter);
} else if (unit == ConstUtil.UNIT_MINUTE) {
return ldt.minusMinutes(mount).format(formatter);
} else if (unit == ConstUtil.UNIT_HOUR) {
return ldt.minusHours(mount).format(formatter);
} else if (unit == ConstUtil.UNIT_DAY) {
return ldt.minusDays(mount).format(formatter);
} else if (unit == ConstUtil.UNIT_WEEK) {
return ldt.minusWeeks(mount).format(formatter);
} else if (unit == ConstUtil.UNIT_MONTH) {
return ldt.minusMonths(mount).format(formatter);
} else if (unit == ConstUtil.UNIT_YEAR) {
return ldt.minusYears(mount).format(formatter);
}
return ldt.format(formatter);
} /**
* @param date
* @return Date
*/
public static Date convertStringToDate(String date) {
try {
return new SimpleDateFormat(DEFAULT_PATTERN).parse(date);
} catch (ParseException e) {
return null;
}
} /**
* 把日期转换成yyyy-MM-dd HH:mm:ss格式
*
* @param date
* @return String
*/
public static String convertDate(Date date) {
if (date == null) {
return EMPTY_SRING;
}
return new SimpleDateFormat(DEFAULT_PATTERN).format(date);
}
/**
* 把时间加上day天后返回,如果传负数代表减day天
*
* @param date
* @param day
* @return Date
*/
public static Date dateAdd(Date date, int day) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) + day);
return calendar.getTime();
}
}
LocalDateTime的更多相关文章
- Convert Date between LocalDateTime
http://blog.progs.be/542/date-to-java-time Java8 has new date and time classes to “replace” the old ...
- Java 8 Date Time API Example Tutorial – LocalDate, Instant, LocalDateTime, Parse and Format
参考 Java 8 Date and Time API is one of the most sought after change for developers. Java has been mis ...
- LocalDateTime返回的是Local时间
LocalDateTime返回的是本地时间,比如 LocalDateTime startDateTime = LocalDateTime.of(2016, 9, 18,00, 00); 返回的时间格式 ...
- BeanInstantiationException: Failed to instantiate [java.time.LocalDateTime]
错误提示: Request processing failed; nested exception is org.springframework.beans.BeanInstantiationExce ...
- SpringMvc Json LocalDateTime 互转,form urlencoded @ModelAttribute 转换
JDK8 的LocalDate 系列日期API ,比Date 或者 Calendar 都好用很多,但是在SpringMvc 自动装配会有点小问题 会导致抛出类似异常 default message [ ...
- 在JDBC中使用Java8的日期LocalDate、LocalDateTime
在实体Entity里面,可以使用java.sql.Date.java.sql.Timestamp.java.util.Date来映射到数据库的date.timestamp.datetime等字段 但是 ...
- spring boot添加 LocalDateTime 等 java8 时间类序列化和反序列化的支持
由于项目将原有的 Date类型的字段改造为 LocalDate,LocalDateTime,LocalTime 类型, 发现 spring 对项目的时间格式无法自动转换,故需手动配置下. 在sp ...
- springboot~mybatis里localdatetime序列化问题
问题起因 主要是使用mybatis作为ORM之后,返回的对象为Map,然后对于数据库的datetime,datestamp类型返回为时间戳而不是标准的时间,这个问题解决方案有两种,大叔分析一下: 在m ...
- LocalDate、LocalDateTime、LocalTime开发小结
在我之前的文章<[整理]Java 8新特性总结 >中有提到Date/Time API (JSR 310)对日期与时间的处理.它将服务端对时间的处理进行了统一,使得对时间的处理更加规范和统一 ...
- Java8 LocalDateTime获取时间戳(毫秒/秒)、LocalDateTime与String互转、Date与LocalDateTime互转
本文目前提供:LocalDateTime获取时间戳(毫秒/秒).LocalDateTime与String互转.Date与LocalDateTime互转 文中都使用的时区都是东8区,也就是北京时间.这是 ...
随机推荐
- mysql 5.7.25中ibtmp1文件过大
问题描述 生产环境linux suse11.4, 根目录/ 下大小:50G, ibtmp1大小:31G, 磁盘空间爆满100%告警. ibtmp1文件说明 ibtmp1是非压缩的innodb临时表的独 ...
- SpringBoot2.x搭建Eureka
1 说明 全部配置基于1.8.0_111 当前SpringBoot使用2.0.5 2 创建项目 在SpringBoot项目生成器中,输入Group和Artifact,如下配置: 3 pom.xml配置 ...
- JDBC连接时出现的两个错误
这两个错误都是因为版本的更新导致的: 错误代码: package FirstTest; import java.sql.*; public class FirstJDBC { public stati ...
- 学习Spring5源码时所遇到的坑
学习Spring5源码时所遇到的坑 0)本人下载的源码版本是 spring-framework-5.0.2.RELEASE 配置好gradle环境变量之后,cmd进入到spring项目,执行gradl ...
- 【转】tf.train.MonitoredTrainingSession()解析
原文地址:https://blog.csdn.net/mrr1ght/article/details/81006343. 本文有删减. MonitoredTrainingSession定义 首先,tf ...
- BJOI2018 day2
双人猜数游戏 Alice 和 Bob 是一对非常聪明的人,他们可以算出各种各样游戏的最优策略.现在有个综艺节目<最强大佬>请他们来玩一个游戏.主持人写了三个正整数 \(s\) .\(m\) ...
- 别名alias永久生效别名alias永久生效;虚拟机的NAT模式,进行静态IP配置,并A、B的实现免密访问
别名alias永久生效 1.打开cd /etc/profile.d 目录 新建文件my_alias.sh 2.my_alias.sh里面添加 alias p=’poweroff -h’ alias r ...
- node 进程管理 child_process [spawn,exec] | 珠峰培训node正式课 网络爬虫
run.js ; function set(){ i++ setTimeout(function(){ console.log(i) ){ set(); } },) }set(); child_pro ...
- 范式(Paradigm)是什么?
Paradigm (范式) 是一个领域中主流的行事套路,它包括 philosophy (理念) 和 methods (方法)两部分.Philosophy (理念) 这个概念很好理解.比如,购物理念就是 ...
- Internal.Cryptography.CryptoThrowHelper+WindowsCryptographicException 拒绝访问 / 出现了内部错误 c# – 当使用X509Certificate2加载p12/pfx文件时出现
环境:iis/netcore 2.2 初始调用:X509Certificate2 certificate = new X509Certificate2(input.Path, CER_PASSWORD ...