- SpringBoot 入门
- SpringBoot 基本原理
- SpringBoot 自定义配置
- SpringBoot 热部署配置
- SpringBoot 进行 Junit 测试
- SpringBoot 整合 MyBatis
- SpringBoot 事务配置
- SpringBoot 与 JSP 集成
- SpringBoot 项目的 WAR 部署方式
- SpringBoot 整合 WebSocket
- SpringBoot 中 MVC 解决日期转换配置
- SpringBoot 中 Jackson 的使用
- SpringBoot 聚合项目创建时 父工程不再是 spring boot starter parent 如何解决
- SpringBoot 使用 CORS 解决跨域问题
- SpringBoot 手动回滚事务
- SpringBoot 项目中 AOP 的配置
- SpringBoot 项目配置文件加密
- SpringBoot 配置文件读取
- 请求参数注解校验
- SpringApplication 源码分析
- SpringBoot 自动配置基本原理
- 自定义 SpringBoot starter
- SpringBoot 自动配置之条件注解
- SpringBoot SPI 机制
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
SpringBoot 中 MVC 解决日期转换配置
在项目下新建该配置类即可:
import org.springframework.core.convert.converter.Converter;
import org.springframework.stereotype.Component;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* 全局handler前日期统一处理
* @author zhanghang
* @date 2018/1/11
*/
@Component
public class DateConverterConfig implements Converter<String, Date> {
private static final List<String> formarts = new ArrayList<>(4);
static{
formarts.add("yyyy-MM");
formarts.add("yyyy-MM-dd");
formarts.add("yyyy-MM-dd hh:mm");
formarts.add("yyyy-MM-dd hh:mm:ss");
}
@Override
public Date convert(String source) {
String value = source.trim();
if ("".equals(value)) {
return null;
}
if(source.matches("^\\d{4}-\\d{1,2}$")){
return parseDate(source, formarts.get(0));
}else if(source.matches("^\\d{4}-\\d{1,2}-\\d{1,2}$")){
return parseDate(source, formarts.get(1));
}else if(source.matches("^\\d{4}-\\d{1,2}-\\d{1,2} {1}\\d{1,2}:\\d{1,2}$")){
return parseDate(source, formarts.get(2));
}else if(source.matches("^\\d{4}-\\d{1,2}-\\d{1,2} {1}\\d{1,2}:\\d{1,2}:\\d{1,2}$")){
return parseDate(source, formarts.get(3));
}else {
throw new IllegalArgumentException("Invalid boolean value '" + source + "'");
}
}
/**
* 格式化日期
* @param dateStr String 字符型日期
* @param format String 格式
* @return Date 日期
*/
public Date parseDate(String dateStr, String format) {
Date date=null;
try {
DateFormat dateFormat = new SimpleDateFormat(format);
date = dateFormat.parse(dateStr);
} catch (Exception e) {
}
return date;
}
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论