feat(sj_1.1.0-beta1): 添加String=>LocalDateTime Mvc转换
This commit is contained in:
parent
33e595ca2d
commit
f51404bba0
@ -182,4 +182,20 @@ public interface SystemConstants {
|
|||||||
* 组名、场景名、空间ID通用正则
|
* 组名、场景名、空间ID通用正则
|
||||||
*/
|
*/
|
||||||
String REGEXP = "^[A-Za-z0-9_-]{1,64}$";
|
String REGEXP = "^[A-Za-z0-9_-]{1,64}$";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 长时间格式
|
||||||
|
*/
|
||||||
|
String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss";
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
String YYYYMMDDHHMMSS = "yyyyMMddHHmmss";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 短时间格式
|
||||||
|
*/
|
||||||
|
String YYYY_MM_DD = "yyyy-MM-dd";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,14 +1,20 @@
|
|||||||
package com.aizuda.snailjob.server.web.interceptor;
|
package com.aizuda.snailjob.server.web.interceptor;
|
||||||
|
|
||||||
|
import cn.hutool.core.date.LocalDateTimeUtil;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
import org.springframework.core.convert.converter.Converter;
|
||||||
|
import org.springframework.format.FormatterRegistry;
|
||||||
import org.springframework.web.method.support.HandlerMethodArgumentResolver;
|
import org.springframework.web.method.support.HandlerMethodArgumentResolver;
|
||||||
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
|
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
|
||||||
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
|
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
|
||||||
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
|
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import static com.aizuda.snailjob.common.core.constant.SystemConstants.YYYY_MM_DD_HH_MM_SS;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author opensnail
|
* @author opensnail
|
||||||
* @date 2022-03-06
|
* @date 2022-03-06
|
||||||
@ -41,4 +47,21 @@ public class SnailJobWebMvcConfigurerAdapter implements WebMvcConfigurer {
|
|||||||
public void addResourceHandlers(ResourceHandlerRegistry registry) {
|
public void addResourceHandlers(ResourceHandlerRegistry registry) {
|
||||||
registry.addResourceHandler("/admin/**").addResourceLocations("classpath:/admin/");
|
registry.addResourceHandler("/admin/**").addResourceLocations("classpath:/admin/");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addFormatters(FormatterRegistry registry) {
|
||||||
|
registry.addConverter(new Converter<String, LocalDateTime>() {
|
||||||
|
@Override
|
||||||
|
public LocalDateTime convert(String source) {
|
||||||
|
try {
|
||||||
|
// 尝试解析为时间戳
|
||||||
|
Long timestamp = Long.valueOf(source);
|
||||||
|
return LocalDateTimeUtil.of(timestamp);
|
||||||
|
} catch (NumberFormatException ignore) {
|
||||||
|
return LocalDateTimeUtil.parse(source, YYYY_MM_DD_HH_MM_SS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user