又见bug(乱码)---粗心大意害死人

本文记录了一次解决Struts1项目中乱码问题的经历,通过调整reset方法中的请求对象类型,最终解决了中文乱码问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目环境:struts1

 

还是春节前的事情了,做了个查询的功能,结果每次提交到服务器的时候就发生乱码,回忆起上次东哥帮我解决乱码是在action对应的form里面加了一个reset方法,然后在里面将request的字符编码设置成了UTF-8,当时可能是想顺便看下form里面对应的父类都有什么方法,于是就利用IDE加入了一个reset方法,并做好了相应的设置,可惜乱码还是依旧。

 

于是只好用new String(string1).getBytes("ISO-8859-1", "UTF-8");的方式处理了一下,后台就能够正常的查询数据了,但是这个方式在查询的输入框中我输入的内容是会回显的,然后看到的还是乱码。

 

 

网上查了半天,也没查到结果,于是请来东哥帮忙(十分不好意思,每次都请东哥帮忙),东哥看了半天,也还是没啥结果……

 

 

春节后我觉得这个乱码的事情实在闹心,就利用技巧不让这个东东进行回显,呵呵,虽然乱码的问题还是没有解决,但是看起来却已经好多了

 

今天写其他的form的时候,无意中发现form的父类(ActionForm)里面有两个reset方法,而且他们的参数长得很像,都有ActionMapping mapping这个参数,还有个request参数,区别在于这两个request一个是ServletRequest类型的,一个是HttpServletRequest类型的

 

看到这个之后,我又一次福至心灵了,赶紧去看自己乱码的那个form,一看,哈哈,果然是写成了ServletRequest类型的,于是赶紧改正再试一次,哈哈,好了

 

正确的reset方法:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值