servlet 常见中文乱码类型及其解决方法

servlet中文乱码常见有三个类型:

       1.今天在做项目的时候,发现在servlet中查询MySql数据库时,SQL语句中含有中文,总是无法查询出结果。然后我把SQL语句直接放在MySQLWorkbench中进行查询,就可以得出结果。我觉得是servlet端中文乱码的问题没有处理。然后我再连接数据库的URL中添加了一句:characterEncoding=utf8,问题就解决了。添加方法如下:

conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/AttendanceDatabase?characterEncoding=utf8","root","123456") ;


    2.第二种是servlet接收中文参数的乱码问题,我们可以在request中设置字符集就可以了。设置方法如下:

     request.setCharacterEncoding("utf-8");


   3.第三种是向客户端返回数据是的乱码问题,我们可以在response中设置字符集来解决。设置方法如下:

     response.setCharacterEncoding("UTF-8");




你可能感兴趣的:(servlet)