javaWeb中文乱码

发布时间 2023-12-22 16:10:55作者: 芊嵛

问题归类

1.登录时无法用中文名登录
2.页面修改数据,后端传入乱码

解决方法

1.数据库

看看数据库编码集是不是中文编码集

如果不是可以在数据库中运行下面语句

ALTER DATABASE 数据库 CHARACTER SET = utf8mb4

2.数据库连接

关键是characterEncoding=utf8没有的加上

url=jdbc:mysql://localhost:3306/数据库?rewriteBatchedStatements=true&useSSL=false&characterEncoding=utf8&serverTimezone=UTC

3.Servlet中

在doPost中第一句加上req.setCharacterEncoding("utf8");

我这里doGet也调用doPost了所有没有在doGet中加

protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    req.setCharacterEncoding("utf8");
}