毕设遇到的乱码总结

1.页面还是要设置一下

<%@ page language="java" import="java.util.*,java.text.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>

2.如果是用Ajax异步传输:我用的原生态的Ajax

xmlhttp.open("GET",url,true);
xmlhttp.setRequestHeader("Content-Type","text/html;charset=utf-8");
xmlhttp.send();

而一般代码都不写后面这段,我感觉和前面的页面那设置有点像,所以设置了一下,就ok了。

3.后台我用struts2做的所以就不写那个response.setContentTypeset.和set什么什么Encoding了。

书上对于struts2的中文乱码配置搞的什么struts.property,我也真的没咋细看,可能是由于着急做毕设,有点烦躁吧。

<constant name="struts.i18n.encoding" value="UTF-8"></constant>
<constant name="struts.locale" value="UTF-8"></constant>

就是直接在struts.xml中配置的常量。

4.最后在控制台上测试的结果却还是乱码,这真的让我很不爽。。。

在网上苦苦搜索,发现tomcat里面的conf目录下的server.xml好像要配置,说tomcat6.0后的版本不用配置了,之前的版本需要配置,我还是半信半疑,然后配置了下,打算试试,毕竟忍耐已经到了限度了。(在tomcat的conf目录下的server.xml文件,大概是在69行的位置)

<Connector port="8080" protocol="HTTP/1.1" 
           connectionTimeout="20000" 
           redirectPort="8443" 
           URIEncoding="UTF-8"/>

然后重新部署运行了下,终于输出了正确结果。

5.数据库也尽量和前后台统一编码

6如果使用hibernate尽量使用utf-8。

配置hibernate框架时应注意在hibernate.cfg.xml配置文件中设置编码:

<property name="connection.url">
	jdbc:mysql://localhost:3306/logistics?useUnicode=true&characterEncoding=utf-8
</property>

后台在往数据库里存数据时,不配置,也会在数据库中产生乱码。反正我就看到了这些。。。。。。。。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值