HTTP Status 400 – Bad Request ,springMVC错误(解决思路)

报错界面

在这里插入图片描述
错误信息:由于被认为是客户端错误(例如,格式错误的请求语法、无效的请求消息框架或欺骗性的请求路由),服务器不能或不会处理该请求。

一般出现这种问题是因为我想要传输的是Date类型的数据,而系统默认是传String类型的,因而传递失败。解决方法也不难,我有两种解决思路提供给大家。

①加@DateTimeFormat注解(局部定义)

直接在你实体类定义的时间类型属性的上方加注解,这样定义的话输入数据的时候就要和规范式一样(如:2019-01-01)

在这里插入图片描述

②自定义类型转换器(全局定义,推荐使用)

(1)首先写一个类,功能是强转数据类型保存,放哪里不重要,只要自己记得就行了。
模板 DateConverter.java(注意包的位置就行了):

package com.springmvc.converter;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.springframework.core.convert.converter.Converter;

public class DateConverter implements Converter<String, Date>{
	
	@Override
	public Date convert(String source) {
		SimpleDateFormat sdf=new SimpleDateFormat("yyyy-mm-dd");
		try {
			sdf.setLenient(false);//是否宽松解析,默认true
			return sdf.parse(source);
		} catch (ParseException e) {
			// TODO: handle exception
			e.printStackTrace();
		}
		return null;
	}
}

(2)springMVC-servlet.xml的配置
基本就是添加下面这些配置,注解驱动的ID对应类型转换器的ID,我们的项目肯定会稍有不同,下面分析下类型转换器的配置步骤。
在这里插入图片描述
类型转换器的配置步骤:
●(1)

class="org.springframework.format.support.FormattingConversionServiceFactoryBean"

这个的路径如图:
在这里插入图片描述

我们右键文件点击Copy Qualified Name可以直接把路径复制下来,很方便。
在这里插入图片描述
●(2)

<property name="converters">

它的名字就在上面的文件里面,点进入查看复制粘贴就好。
在这里插入图片描述

●(3)

       		<set>
       		<bean class="com.springmvc.converter.DateConverter"></bean>
       		</set>

还是那个文件,set中的?表示的是一个bean,我们向添加前面的文件路径一样Copy Qualified Name它的路径下来粘贴就行了。
在这里插入图片描述

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值