Web开发乱码问题总结

  • 介绍

在web开发过程中,有很多地方可能会导致乱码问题。

  • 请求

从浏览器-应用服务器(接收请求)-程序-数据库-应用服务器(输出响应)-浏览器,每个环境都可能会导致发生乱码。

如果使用GET请求来传递非英文字符,可能发生乱码。你可以把请求类型换为POST请求,或者使用urlEncoding来把参数进行编码。

可以在浏览器端,使用js来把参数进行编码(encodeURI),然后在服务器端进行解码。

GET请求适用于有少了请求参数的情况,并且这些参数的值只会有英文等ASCII字符。如果需要传递的参数比较多,就建议使用POST请求来代替。而对于,restFul风格的api中,如果需要在GET请求中包括中文字符的话,就需要先把数据进行编码。

  • 页面

HTML页面,也是有字符集设置的。不管你使用JSP还是velocity等模板引擎,都需要设置合适的字符集。

  • 数据库

在web项目中,很多数据会保存在数据库中,所以,数据库也是很容易导致发生乱码的一个环节。

以MySQL为例,你需要确保schema、table的字符集都是统一的,另外,如果使用jdbc来连接数据库的话,还需要在连接参数上指定字符集。

  • 参考

本文为原创,如果您当前访问的域名不是surenpi.com,请访问“素人派”。

MySQL乱码

发表评论

电子邮件地址不会被公开。 必填项已用*标注