测试java8日期时间类
- 前言
- 代码
- 总结
前言:java8推出了新的日期和时间操作类,尝试一些。用junit,可以直接运行所有的函数,方便明了。
代码:
1 LocalDate的使用,包括声明, LocalDate转String(固定格式), String转LocalDate,
LocalDate localDate = LocalDate.of(2017, 9, 12);
//localDate to string
System.out.println(localDate.toString());
//String to localDate
LocalDate localDate1 = LocalDate.parse("2017-09-12");
System.out.println(localDate1);
//LocalDate to format String.
String s = localDate.format(DateTimeFormatter.ofPattern("yyyyMMdd"));
//today
LocalDate localDate3 = LocalDate.now();
String today = localDate3.format(DateTimeFormatter.ofPattern("yyyyMMdd"));
System.out.println("today " + today);
2 日期表示的格式
yyyy年MM月dd日 HH时mm分ss秒, 需注意大小写。 根据组个有相应的表示格式
3 LocalTime的声明 LocalTime->string, String->LocalTime, 制定相应格式
LocalTime time = LocalTime.parse("13:45:20");
//localTime to String
System.out.println("timeziling " + time.toString());
//NOW
LocalTime localTime = LocalTime.now();
String now = localTime.format(DateTimeFormatter.ofPattern("HHmmss"));
System.out.println("local time " + now);
4 LocalDateTime的声明 LLocalDateTime->string, String->LocalDateTime, 制定相应格式
LocalDateTime now = LocalDateTime.now();
System.out.println("now " + now);
String day = now.format(DateTimeFormatter.BASIC_ISO_DATE);
System.out.println("day"+ day);
//string to LocalDateTime
DateTimeFormatter sf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime startLocalDate = LocalDateTime.parse("2016-11-13 23:59:59", sf);
//localDateTime to String
System.out.println(startLocalDate.toLocalDate().toString() + " " +
startLocalDate.toLocalTime().toString());
5 基础数据与mysql日期数据对应。另在herbinate中使用LocalDate不能进行序列化(herbinate5.2)
//在MySQL中 理所当然的认为是localDate对应的是Date,但真正在实体类操作中会报错
// localDate ----> Date
// localTime ----> Time
//localDateTime ------> timestamp
之前是用junit的输出,结果文章一直处于审核状态。
用junit的好处可以不用每次都要修改main方法。快速直接的查看每个输出内容。
当然相对于去查看源码进行阅读则要慢很多。
最后:这是一个适合新手的慢学习方式,效率不高。