jsp前端输入中文数据传到controller变成问号?的解决办法

还是写老师布置的实验的时候,解决了xml文件找不到的问题之后又遇到新的问题:前端登录处输入用户名和密码,结果明明输入的用户名是对的密码也是对的(输入的用户名是中文),它就是显示用户名或密码错误。然后我就去试着在数据库里加个姓名的拼音,然后再重新启动系统再登录,结果它能成功登录--_--

然后就想着是不是编码的问题,或者数据库问题,就把controller里收到的姓名和密码在控制台输出,结果发现输出的姓名是问号?又把拼音版的也输出就没问题。这不指定编码问题么?然后就找网上教程,又是一堆配置的还一堆对我的代码没有效果的,比如在UserController里面,login前面的@RequestMapping那里改,把这个

@RequestMapping("/login")

 改成下面这个

@RequestMapping(value="/login", method = RequestMethod.POST, produces ="text/plain; charset=UTF-8")
    

不过对我的代码没有效果。

试了两个小时。而且本身所有文件的代码的都是utf-8格式的了,怎么还不对呢?又是一番搜索终于被我找到了成功的解决办法!!!

<!-- Spring字符集编码过滤器 -->
  <filter>
    <filter-name>EncodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
      <param-name>encoding</param-name>
      <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
      <param-name>forceEncoding</param-name>
      <param-value>true</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>EncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

  这个是看的@登山猿的文章,原文链接springMVC:Controller接受前端数据中文出现问号?问题解决-优快云博客

不过我没有加这个也成功了。

解决办法就是上面的大段代码。


如果这篇文章对你有帮助,也欢迎点赞收藏^_^

加油加油!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值