解决数据库至页面的乱码问题(全)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: web project中,有很多地方都会设置字符集,最好统一,不然出错的时候就不好找了,都以utf8为例,这是我最喜欢的字符集,让我们看看都哪些地方设置了字符集。     首先,mysql服务端,在安装后的配置阶段,最好就把字符集设置为utf8,它默认的是latin1,经常乱码。
web project中,有很多地方都会设置字符集,最好统一,不然出错的时候就不好找了,都以utf8为例,这是我最喜欢的字符集 解决数据库至页面的乱码问题(全),让我们看看都哪些地方设置了字符集。

    首先,mysql服务端,在安装后的配置阶段,最好就把字符集设置为utf8,它默认的是latin1,经常乱码。。。在安装的地方,找到my.ini,有两处字符集的地方,修改一下也可以。

    然后,是sqlyog,sql的客户端,很好用,不过用时间长了,发现sql语句都不会怎么写了,还得复习一下,这个改字符集,我查了好久,软件用的不是很熟啊。。。在创建表的时候,下面有个按钮“advanced properties”,在这里修改字符集为utf8.

   sql端的设置完毕,就到项目中的字符集了。首先,在jsp页面中,最前面要加上这样一句话:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8" %>,否则保存的时候可能就会报错,因为不识别页面中的中文。

   页面搞定以后,就是配置文件了。

   applicationContext.xml中,连接数据库的地方,为了以防万一,连接时出错,还是加上字符集比较好。

   <property name="url"
   value="jdbc:mysql://localhost:3306/mmcwz?useUnicode=true&amp;characterEncoding=UTF-8">
   </property>

   struts-config.xml中,上面会有这样的话:

   <?xml version="1.0" encoding="UTF-8"?>是自动生成的

   web.xml中,很重要的设置,过滤器的设置。

   <filter>
    <filter-name>CharacterEncodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
      <param-name>encoding</param-name>
      <param-value>UTF-8</param-value>
    </init-param>
  </filter>

这些都搞定以后,应该就没有问题了。当出现问的时候,要找出哪一步出现了问题,就像刚刚,我在mysql中,use mmcwz,select * from announcementinfo;取出来的表中数据就已经是乱码了,说明是sqlyog和mysql字符集不一致,之后,show create table announcementinfo,发现charset竟然是gbk,这样就找到问题了。也可以在java文件中插桩,如果发现乱码,可能就是配置的问题或者页面设置的问题。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
7月前
|
Devops API 项目管理
云效常见问题之页面提示数据库保存不进去如何解决
云效(CloudEfficiency)是阿里云提供的一套软件研发效能平台,旨在通过工程效能、项目管理、质量保障等工具与服务,帮助企业提高软件研发的效率和质量。本合集是云效使用中可能遇到的一些常见问题及其答案的汇总。
|
4月前
|
XML SQL JavaScript
在vue页面引入echarts,图表的数据来自数据库 springboot+mybatis+vue+elementui+echarts实现图表的制作
这篇文章介绍了如何在Vue页面中结合SpringBoot、MyBatis、ElementUI和ECharts,实现从数据库获取数据并展示为图表的过程,包括前端和后端的代码实现以及遇到的问题和解决方法。
在vue页面引入echarts,图表的数据来自数据库 springboot+mybatis+vue+elementui+echarts实现图表的制作
|
6月前
|
存储 关系型数据库 分布式数据库
PolarDB产品使用问题之如何避免在修改数据库的编码格式时出现乱码状况
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
111 5
|
6月前
|
Java Devops API
阿里云云效操作报错合集之云效页面提示数据库保存不进去,该怎么办
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
6月前
|
JSON 前端开发 JavaScript
SSMP整合案例第五步 在前端页面上拿到service层调数据库里的数据后列表
SSMP整合案例第五步 在前端页面上拿到service层调数据库里的数据后列表
49 2
|
5月前
|
关系型数据库 MySQL 数据库
生成订单的过程------支付系统21------支付宝支付----统一收单下单并支付页面接口----创建订单,下订单,我们要在我们数据库的订单表中,设置订单,订单表常用数据库设置格式
生成订单的过程------支付系统21------支付宝支付----统一收单下单并支付页面接口----创建订单,下订单,我们要在我们数据库的订单表中,设置订单,订单表常用数据库设置格式
|
6月前
|
Oracle 关系型数据库 Linux
解决oracle数据库乱码
解决oracle数据库乱码
|
6月前
|
关系型数据库 MySQL 项目管理
数据库大作业——基于qt开发的图书管理系统(四)项目目录的整理与绘制登录页面
数据库大作业——基于qt开发的图书管理系统(四)项目目录的整理与绘制登录页面
|
7月前
|
SQL 分布式计算 关系型数据库
云原生数据仓库产品使用合集之可以把ADB MySQL湖仓版数据库做成页面查询的数据库吗
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
|
7月前
|
算法 关系型数据库 API
Python【算法中心 02】Web框架Django管理页面使用(管理员账号创建+API使用+应用添加)GreenPlum数据库引擎及API测试
Python【算法中心 02】Web框架Django管理页面使用(管理员账号创建+API使用+应用添加)GreenPlum数据库引擎及API测试
109 0