这里分别介绍Mysql和Java是如何获取当前是星期几的方法
mysql
mysql内置了一种名为weekday()的语法,用法也很简单 weekday(20200505)或者weekday(‘2020-05-05’),然后就可以得到一个0-6的数字,其中0代表星期一,1代表星期二,以此类推。
Java
我们可以使用LocalDate自带的方法来进行判断
/**
* 获取当前日期为星期几
*/
@Test
public void test05() {
// 当前日期 ,写下这篇文章的时候是20200505
LocalDate localDate = LocalDate.now();
DayOfWeek dayOfWeek = localDate.getDayOfWeek();
System.out.println(dayOfWeek); // TUESDAY
System.out.println(dayOfWeek.getValue()); // 2
}
/**
* 指定日期为星期几
*/
@Test
public void test05() {
// 先使用dateFormatter获取到LocalDate
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd");
LocalDate localDate = LocalDate.parse("20200101", formatter);
DayOfWeek dayOfWeek = localDate.getDayOfWeek();
System.out.println(dayOfWeek); // WEDNESDAY
System.out.println(dayOfWeek.getValue()); // 3
}
这里有两个注意的地方:
1. 与Mysql的函数不同,这里是以1开始计数,1代表星期一,2代表星期2
2. DayOfWeek是一个枚举类,并不是单纯的String的类型,在比较的时候不能直接用字符串去比对