package com.pdsu.hu1;
import org.junit.Test;
import java.util.Date;
/**
* JDK8之前的日期和时间测试
*
* @author H
* @create 2020-09-22 15:00
*/
public class DateTime {
/*
java.util.date类
|---java.sql.date类
1.两个构造器的使用
//构造器一:Date():创建一个对应当前时间的Date对象
//构造器二:创建指定毫秒数的Date对象
2.两个方法的使用
>toString()显示当前的年月日时分秒
>getTime()获取当前Date对象对应的毫秒数。(时间戳)
3.java.sql.Date对应着数据库的日期类型的变量
>如何实例化
>如何将java.util.date-->java.sql.date对象
*/
@Test
public void test2(){
//构造器一:Date():创建一个对应当前时间的Date对象
Date date1=new Date();
System.out.println(date1.toString());
System.out.println(date1.getTime());
//构造器二:创建指定毫秒数的Date对象
Date date2=new Date(1600758435994L);
System.out.println(date2);
//创建java.sql.date对象
java.sql.Date date3 = new java.sql.Date(1600758604559L);
System.out.println(date3);
//如何将java.util.Date对象转换为java.sql.date
//情况一
Date date5=new java.sql.Date(1500758604559L);
java.sql.Date date6=(java.sql.Date)date5;
//情况二:
Date date7=new Date();
java.sql.Date date8=new java.sql.Date(date7.getTime());
}
@Test
public void test1(){
long time = System.currentTimeMillis();
//返回当前时间与1970年1月1日0时0分0秒的时间差(毫秒)
//称为时间戳
System.out.println(time);
}
}
package com.pdsu.hu1; import org.junit.Test; import java.time.*; import java.time.format.DateTimeFormatter; import java.time.temporal.TemporalAccessor; import java.util.Date; /** * JDK 8 中日期时间API测试 * @author H * @create 2020-09-22 16:08 */ public class Jdk8DateTimeTest { @Test public void test1(){ Date date = new Date(2020-1900,9-1,8); System.out.println(date); } /* LocalDate\LocalTime\LocalDateTime的使用 */ @Test public void test2(){ //now():获取当前的日期、时间、日期加时间 LocalTime now = LocalTime.now(); LocalDate now1 = LocalDate.now(); LocalDateTime now2 = LocalDateTime.now(); System.out.println(now); System.out.println(now1); System.out.println(now2); //fo():设置指定的年、月、日、时、分、秒、没有偏移量 LocalDateTime time = LocalDateTime.of(2020, 10, 16, 23, 23); System.out.println(time); //getXxx()获取相关属性 System.out.println(now2.getDayOfMonth()); //withXxx()设置相关属性 LocalDateTime localDateTime = now2.withDayOfMonth(28); System.out.println(localDateTime); //plus---+ LocalDateTime localDateTime1 = localDateTime.plusMonths(3); System.out.println(localDateTime1); //min--- - LocalDateTime localDateTime2 = localDateTime1.minusMonths(3); System.out.println(localDateTime2); } @Test public void test3(){ //now 本初子午线的时间 Instant now = Instant.now(); System.out.println(now); //添加时间偏移量 OffsetDateTime offsetDateTime = now.atOffset(ZoneOffset.ofHours(8)); System.out.println(offsetDateTime); //获取对应的毫秒数 long milli = now.toEpochMilli(); System.out.println(milli); //ofEpochMilli转换为时间 Instant instant = Instant.ofEpochMilli(1600764391305L); System.out.println(instant); } /* DateTimeFormate:格式化或解析日期时间 */ @Test public void test4(){ DateTimeFormatter formate = DateTimeFormatter.ISO_LOCAL_DATE_TIME; //格式化 LocalDateTime now = LocalDateTime.now(); String format = formate.format(now); System.out.println(now); System.out.println(format); //解析:字符串-->日期 TemporalAccessor parse = formate.parse("2020-09-22T16:52:08.960"); System.out.println(parse); } }