问题原因:
此处我是前端传入了日期参数,后台接收日期参数时格式不匹配导致。
问题截图:

解决措施:
方式一:
- 其实规避掉日期格式就可以不报错。(分秒不漏的严格输入)
方式二:
- 在src目录下定义一个
convert
包,用来存放转换规则类,即DateConvert
类
package convert;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.springframework.core.convert.converter.Converter;
public class DateConverter implements Converter<String, Timestamp>
{
@Override
public Timestamp convert(String s)
{
System.out.println("convert:[" + s + "]");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
Date out = null;
try
{
out = sdf.parse(s);
} catch (Exception e)
{
System.out.println("无效日期格式");
}
return new Timestamp(out.getTime());
}
}
- 然后在
spring-config.xml
中添加对应的加载注解驱动项即可
<!-- 加载注解驱动 -->
<mvc:annotation-driven conversion-service="conversionService" />
<bean id="conversionService"
class="org.springframework.context.support.ConversionServiceFactoryBean">
<property name="converters">
<set>
<bean class="convert.DateConverter" />
</set>
</property>
</bean>
-
上述完成后代码使得在时间框输入时,写清年月日即可,Tomcat清理一下,restart一下就可以启动项目了
-
输入年月日
-
项目控制台中显示日期数据
之至共勉之