@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的更多相关文章

  1. Convert Date between LocalDateTime

    http://blog.progs.be/542/date-to-java-time Java8 has new date and time classes to “replace” the old ...

  2. 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 ...

  3. LocalDateTime返回的是Local时间

    LocalDateTime返回的是本地时间,比如 LocalDateTime startDateTime = LocalDateTime.of(2016, 9, 18,00, 00); 返回的时间格式 ...

  4. BeanInstantiationException: Failed to instantiate [java.time.LocalDateTime]

    错误提示: Request processing failed; nested exception is org.springframework.beans.BeanInstantiationExce ...

  5. SpringMvc Json LocalDateTime 互转,form urlencoded @ModelAttribute 转换

    JDK8 的LocalDate 系列日期API ,比Date 或者 Calendar 都好用很多,但是在SpringMvc 自动装配会有点小问题 会导致抛出类似异常 default message [ ...

  6. 在JDBC中使用Java8的日期LocalDate、LocalDateTime

    在实体Entity里面,可以使用java.sql.Date.java.sql.Timestamp.java.util.Date来映射到数据库的date.timestamp.datetime等字段 但是 ...

  7. spring boot添加 LocalDateTime 等 java8 时间类序列化和反序列化的支持

    由于项目将原有的  Date类型的字段改造为 LocalDate,LocalDateTime,LocalTime 类型, 发现  spring  对项目的时间格式无法自动转换,故需手动配置下. 在sp ...

  8. springboot~mybatis里localdatetime序列化问题

    问题起因 主要是使用mybatis作为ORM之后,返回的对象为Map,然后对于数据库的datetime,datestamp类型返回为时间戳而不是标准的时间,这个问题解决方案有两种,大叔分析一下: 在m ...

  9. LocalDate、LocalDateTime、LocalTime开发小结

    在我之前的文章<[整理]Java 8新特性总结 >中有提到Date/Time API (JSR 310)对日期与时间的处理.它将服务端对时间的处理进行了统一,使得对时间的处理更加规范和统一 ...

  10. Java8 LocalDateTime获取时间戳(毫秒/秒)、LocalDateTime与String互转、Date与LocalDateTime互转

    本文目前提供:LocalDateTime获取时间戳(毫秒/秒).LocalDateTime与String互转.Date与LocalDateTime互转 文中都使用的时区都是东8区,也就是北京时间.这是 ...

随机推荐

  1. Solr基础理论【排名检索、查准率、查全率】

    一.排名检索 搜索引擎代表了基于查询,返回优先文档的一种方法.在关系型数据库的SQL查询中,表的一行要么匹配一个查询,要么不匹配,查询结果基于一列或多列排序.搜索引擎根据文档与查询匹配的程度为文档打分 ...

  2. 一步一步从PostgreSQL安装到delphi 访问

    今天,我们使用ubuntu 19 来安装PostgreSQL. 1.直接使用包安装 sudo apt-get install postgresql 按Y,直接安装. 安装完毕. 初次安装后,默认生成一 ...

  3. 百度地图公交线路查询,并绘制到地图上并获取所有路径经纬度点(可供echarts 路径图使用)

    github地址 https://github.com/a1115040996/MyHTML/tree/gh-pages/BDMap 源代码 <!DOCTYPE html PUBLIC &quo ...

  4. Junit测试入门

    junit测试的6大注解 @BeforeClass    最先执行,在整个测试类中只会执行一次,所以它只能声明一次,并且被它标注的方法必须声明为static @Before       可以声明多个方 ...

  5. C++学习(7)—— 函数提高

    1. 函数默认参数 在C++中,函数的形参列表中的形参是可以有默认值的 语法:返回值类型 函数名 (参数=默认值){} 注意 如果某个位置已经有了默认参数,那么从这个位置往后,从左到右都必须有默认值 ...

  6. Dump文件的生成和使用

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/lk142500/article/detai ...

  7. easyui datebox 只显示日期,本文为转载,稍加改动

    var DateBoxHandler = {}; DateBoxHandler.onlyShowMonth = function(id) { function padding(v) {if (v &l ...

  8. Mac下用命令行获取苹果手机的UDID

    在终端输入命令行:system_profiler SPUSBDataType | grep "Serial Number:.*" | sed s#".*Serial Nu ...

  9. FitNesseRoot/ErrorLogs目录下可查看fitnesse输出日志

    调试fitnesse用例时,通过测试页面的输出信息不是很好定位问题出在哪里 这时可以在写代码过程中,增加一些输出信息,比如说java的话,可以用log4j.注意要把日志输出弄成utf-8编码,不然会中 ...

  10. BZOJ 4411: [Usaco2016 Feb]Load balancing 线段树+二分

    code: #include <bits/stdc++.h> #define N 100060 #define M 1000000 #define lson x<<1 #def ...