国庆期间技术精进:开发中对的时间参数接收和处理

221 阅读1分钟

今天是国庆节,祖国母亲70周年庆典,祝愿祖国繁荣昌盛,自己工作顺利。看了一会国庆阅兵,感受到国家的强大,那么作为一名中国公民,我们应该好好工作,好好生活。

闲暇时间,对工作开发中遇到的问题做一个总结和回顾。

在做本期开发时候,因为对时间处理没有经验,耗费一些时间修复时间参数报400问题。

遇到问题:

刚开始,前端对时间参数没有做转化处理,默认是URC格式,后端是可以处理的。

"2019-09-29T09:48:43.738Z" UTC格式可以解析

但是一旦时间控件再做选择之后,时间变为以下的格式,后端服务代码就不能解析,报400参数错误!!!

2019-09-03 07:32:53 不能解析 String String

报错截图:

body内容:

{
	"delayTime": "",
	"injectionPeople": "张非",
	"injectionSpeed": "12",
	"injectionTime": "2019-09-12 08:02:02",
	"note": "备注",
	"id": xxxxxx
}

解决办法:

接收String类型参数 数据库实体映射字段类型:Date

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
   ex.setInjectionTime(sdf.parse(entity.getInjectionTime()));//注射时间
} catch (ParseException e) {
   e.printStackTrace();
}

搜索:

按照这个方法试试并没有解决,但是感觉对解决问题还是有启发的。

1.Spring Mvc使用Jackson进行json转对象时,遇到的字符串转日期的异常处理(Can not deserialize value of type Date from String) blog.csdn.net/qq906627950…

blog.csdn.net/w719566673/… blog.csdn.net/pingweichen…

资料:Java.time包教程

1.java.time.LocalTime类:

www.yiibai.com/javatime/ja…

2.LocalDate.parse(CharSequence text, DateTimeFormatter formatter)方法:

www.yiibai.com/javatime/ja…

3.LocalDate.toString()方法将此日期输出为String,例如:2017-12-03。

www.yiibai.com/javatime/ja…