-言希- 2025-10-30 14:25 采纳率: 0%
浏览 11

若依框架前后端传输问题

朋友们,有谁遇到过这个问题:
若依的微服务框架:前端vue;后端用Spring 微服务,数据库为mysql,部署环境:linux
字符集都设置成了utf8,但是数据库有时候就会存入如下图这种字符,
页面传参部分地方出现乱码,比如用户管理中的修改用户信息,还有自己的主服务里面页面传参到后台,会出现中文乱码。如下图:

img

  • 写回答

5条回答 默认 最新

  • 阿里嘎多学长 2025-10-30 14:41
    关注

    阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程

    解决方案

    根据你的描述,问题可能出在数据库的字符编码设置上。以下是解决方案:

    1. 检查数据库字符编码:确保你的数据库字符编码设置为UTF-8。可以通过以下SQL语句检查:
    SHOW VARIABLES LIKE 'character_set_database';
    SHOW VARIABLES LIKE 'collation_database';
    
    1. 检查表字符编码:确保你的表字符编码设置为UTF-8。可以通过以下SQL语句检查:
    SHOW TABLE STATUS LIKE '你的表名';
    
    1. 检查字段字符编码:确保你的字段字符编码设置为UTF-8。可以通过以下SQL语句检查:
    DESCRIBE 你的表名;
    
    1. 检查前端传参字符编码:确保你的前端传参字符编码设置为UTF-8。可以通过以下代码检查:
    // Vue.js
    // 在发送请求之前,设置请求头的字符编码
    axios.defaults.headers.post['Content-Type'] = 'application/json; charset=UTF-8';
    
    1. 检查后端接收字符编码:确保你的后端接收字符编码设置为UTF-8。可以通过以下代码检查:
    // Spring
    // 在接收请求时,设置请求体的字符编码
    @RequestBody(required = false, value = "UTF-8")
    public String getParam() {
        // ...
    }
    
    1. 检查Linux系统字符编码:确保你的Linux系统字符编码设置为UTF-8。可以通过以下命令检查:
    locale
    

    如果以上步骤都检查通过,但问题仍然存在,请尝试重新部署应用程序或重启数据库服务。

    评论

报告相同问题?

问题事件

  • 创建了问题 10月30日