mirror of
https://gitee.com/dromara/sa-token.git
synced 2025-04-05 17:37:53 +08:00
Merge pull request #310 from faysalmehmood/#309_Unit_Test_Time_Zone_Tweak
#309 修复时区中断单元测试的差异
This commit is contained in:
commit
f99d9f53ce
@ -1,6 +1,8 @@
|
||||
package cn.dev33.satoken.listener;
|
||||
|
||||
import java.util.Date;
|
||||
import java.time.Instant;
|
||||
import java.time.ZoneId;
|
||||
import java.time.ZonedDateTime;
|
||||
|
||||
import cn.dev33.satoken.SaManager;
|
||||
import cn.dev33.satoken.stp.SaLoginModel;
|
||||
@ -50,8 +52,9 @@ public class SaTokenListenerForConsolePrint implements SaTokenListener {
|
||||
*/
|
||||
@Override
|
||||
public void doDisable(String loginType, Object loginId, String service, int level, long disableTime) {
|
||||
Date date = new Date(System.currentTimeMillis() + disableTime * 1000);
|
||||
println("账号[" + loginId + "] " + service + " 服务被封禁,封禁等级=" + level + " (解封时间: " + SaFoxUtil.formatDate(date) + ")");
|
||||
Instant instant = Instant.ofEpochMilli(System.currentTimeMillis() + disableTime * 1000);
|
||||
ZonedDateTime zonedDateTime = ZonedDateTime.ofInstant(instant, ZoneId.systemDefault());
|
||||
println("账号[" + loginId + "] " + service + " 服务被封禁,封禁等级=" + level + " (解封时间: " + SaFoxUtil.formatDate(zonedDateTime) + ")");
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -4,6 +4,8 @@ import java.io.UnsupportedEncodingException;
|
||||
import java.net.URLDecoder;
|
||||
import java.net.URLEncoder;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.ZonedDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
@ -106,6 +108,15 @@ public class SaFoxUtil {
|
||||
public static String formatDate(Date date){
|
||||
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);
|
||||
}
|
||||
|
||||
/**
|
||||
* 将日期格式化 (yyyy-MM-dd HH:mm:ss)
|
||||
* @param zonedDateTime 日期
|
||||
* @return 格式化后的时间
|
||||
*/
|
||||
public static String formatDate(ZonedDateTime zonedDateTime) {
|
||||
return zonedDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
|
||||
}
|
||||
|
||||
/**
|
||||
* 从集合里查询数据
|
||||
|
@ -1,8 +1,10 @@
|
||||
package cn.dev33.satoken.core.util;
|
||||
|
||||
import java.time.Instant;
|
||||
import java.time.ZoneId;
|
||||
import java.time.ZonedDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
@ -51,8 +53,10 @@ public class SaFoxUtilTest {
|
||||
|
||||
@Test
|
||||
public void formatDate() {
|
||||
String formatDate = SaFoxUtil.formatDate(new Date(1644328600364L));
|
||||
Assertions.assertEquals(formatDate, "2022-02-08 21:56:40");
|
||||
Instant instant = Instant.ofEpochMilli(1644328600364L);
|
||||
ZonedDateTime zonedDateTime = ZonedDateTime.ofInstant(instant, ZoneId.of("Asia/Shanghai"));
|
||||
String formatDate = SaFoxUtil.formatDate(zonedDateTime);
|
||||
Assertions.assertEquals(formatDate, "2022-02-08 21:56:40");
|
||||
}
|
||||
|
||||
@Test
|
||||
|
Loading…
Reference in New Issue
Block a user