您的位置:首页 > 编程语言 > Java开发

关于struts2 从jsp页面获取数据乱码问题。

2016-03-24 11:38 387 查看
最近几天在搭框架,之前搭StrutS2 ,然后hibernate ,到这一步的时候就会出现乱码问题。插入数据库的数据如果是中文,就会出现乱码。

然后我找了很久,数据库编码设置的utf-8, jsp 页面设置是utf-8,以及hiberante中的配置文件设置的还是utf-8,但是还是出现乱码。



我试过直接在数据库中写中文,然后拿出数据,不会乱码。还试过在代码中直接将用户名的属性写死。结果还是乱码。

然后我就想,是不是struts 从JSP页面拿数据的时候乱码,果然,在控制台输去前台拿到的数据乱码。

找到struts配置文件

<constant name="struts.i18n.encoding" value="UTF-8"></constant> 这样觉得应该不会乱码了吧,结果运行结果还是乱码,

这句话的意思: 指定Web应用的默认编码集,相当于调用 HttpServletRequest的setCharacterEncoding方法。

后面经过查询资料找到原来还要设置一句

<!-- 设置默认的locale和字符编码 -->

<constant name="struts.locale" value="zh_CN"></constant>

struts.locale:指定Web应用的默认Locale。

struts.i18n.encoding:指定Web应用的默认编码集。该属性对于处理中文请求参数非常有用,对于获取中文请求参数值,应该将该属性值设置为GBK或者GB2312。

然后乱码问题才解决。。真心觉得程序这东西好难调,不过还有自己有兴趣做这个事情。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: