热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

解决JavaWeb开发中Jsp存储读取MySQL数据中文乱码的问题-mysql教程

MySQL虽说好用,但很容易出现中文乱码的问题,以下列出JavaWeb开发中常见的几种中文乱码问题:1、JSP页面显示问题2、存入MySQL数

MySQL虽说好用,但很容易出现中文乱码的问题,以下列出Java Web开发中常见的几种中文乱码问题:1、JSP页面显示问题2、存入MySQL数

MySQL虽说好用,但很容易出现中文乱码的问题,以下列出Java Web开发中常见的几种中文乱码问题:

1、JSP页面显示问题

2、存入MySQL数据中文乱码

3、读取MySQL数据中文乱码

字符集:字符集定义了它包含哪些字符以及每个字符对应什么数字。
字符编码:在计算机中存储数字,显示时转换为对应的字符,编码方式是指表示字符的数字以什么方式存储。

介个也太唧唧歪歪了,不搞这个研究的可以完全忽视。只要知道UTF-8是为统一世界上所有字符编码的产物就ok了。

解决方法才是王道:

(如果页面使用到CKEditor插件的话,其实中文乱码和这个关系不大)

1、JSP显示中文乱码的问题,一般都是没有设置页面编码,注意添加以下这样一段代码

<%@ page pageEncoding=”UTF-8”%>

<%@ page language="java" cOntentType="text/html; charset=UTF-8"%>

"pageEncoding"指定了当前jsp文件存储使用的编码方式,“contentType”用来指定响应头消息中的"Content-Type"

当服务端的响应头消息中没有指定charset时,客户端会依据上面代码中的charset指定的编码方式解码页面

并且JSP都以UTF-8的编码方式保存,把所有可能出现的问题通通抹杀。 如果你使用Myeclipse,可以设置Myeclipse的默认参数,使Myeclipse新建JSP文件时,可以自动是用UTF-8的编码方式。方法:Windows-Preference-Myeclipse-File and Editor-JSP-Encoding,选择ISO 10646/Unicode(UTF-8)

2、存储数据,MySQL表的编码设定,最好指定相应的编码格式。字符集选择utf8,校对utf8_unicode_ci。

安装MySQL时,会提示使用什么样的默认编码,当然也可以自己设定

修改 my.ini(MySQ安装目录下的文件)

# CLIENT SECTION
[client]
port=3306
[mysql]
default-character-set=utf8

# The default character set that will be used when a new schema or table is
# created and no character set is defined
default-character-set=utf8

修改完毕后,务必记得重启MySQL!!!修改这个文件,是我设置了CharacterEncoding、指定了页面编码、并且使用了过滤器依旧无法解决问题,几近崩溃的时候,最后的救命稻草!

3、读取数据时,,在Servlet中添加request.setCharacterEncoding("UTF-8");可以很好地解决从JSP页面接受中文参数乱码

4、使用过滤器,如果在MySQL默认编码格式为UTF-8的情况下,只使用过滤器,便可以解决一切问题,无论你有没有设置那些繁杂的编码。

在包中建一个class:CharacterEncodingFilter

package com.rady.blog;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;

public class CharacterEncodingFilter implements Filter {
private FilterConfig config;
private String encoding = "UTF-8";

public void destroy() {
cOnfig= null;
}

@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding(encoding);
chain.doFilter(request, response);
}

public void init(FilterConfig config) throws ServletException {
this.cOnfig= config;
String s = config.getInitParameter("encoding");
if (s != null) {
encoding = s;
}
}
}

在web.xml中添加

EncodingFilter
com.rady.blog.CharacterEncodingFilter

encoding
UTF-8



EncodingFilter
/*

最后把Tomcat也干掉,防患于未然,滴水不漏,中文从此不再!

修改Tomcat安装目录/conf/server.xml文件

cOnnectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>

推荐阅读
  • 本文详细介绍了如何准备和安装 Eclipse 开发环境及其相关插件,包括 JDK、Tomcat、Struts 等组件的安装步骤及配置方法。 ... [详细]
  • 本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • MySQL中枚举类型的所有可能值获取方法
    本文介绍了一种在MySQL数据库中查询枚举(ENUM)类型字段所有可能取值的方法,帮助开发者更好地理解和利用这一数据类型。 ... [详细]
  • 本文详细介绍了如何通过命令行启动MySQL服务,包括打开命令提示符窗口、进入MySQL的bin目录、输入正确的连接命令以及注意事项。文中还提供了更多相关命令的资源链接。 ... [详细]
  • 创建项目:Visual Studio Online 入门指南
    本文介绍如何使用微软的 Visual Studio Online(VSO)创建和管理开发项目。作为一款基于云计算的开发平台,VSO 提供了丰富的工具和服务,简化了项目的配置和部署流程。 ... [详细]
  • 深入理解ExtJS:从入门到精通
    本文详细介绍了ExtJS的功能及其在大型企业前端开发中的应用。通过实例和详细的文件结构解析,帮助初学者快速掌握ExtJS的核心概念,并提供实用技巧和最佳实践。 ... [详细]
  • Eclipse 中 JSP 开发环境配置指南
    本文详细介绍了如何在 Eclipse 集成开发环境中配置 JSP 运行环境,包括必要的软件下载、Tomcat 服务器的配置以及常见问题的解决方法。 ... [详细]
  • 本文详细介绍了如何正确安装Java EE SDK,并解决在安装过程中可能遇到的问题,特别是关于servlet代码在Apache Tomcat 10中无法运行的情况。 ... [详细]
  • 本文介绍了如何使用jQuery根据元素的类型(如复选框)和标签名(如段落)来获取DOM对象。这有助于更高效地操作网页中的特定元素。 ... [详细]
  • 本文介绍如何在 Xcode 中使用快捷键和菜单命令对多行代码进行缩进,包括右缩进和左缩进的具体操作方法。 ... [详细]
  • Git管理工具SourceTree安装与使用指南
    本文详细介绍了Git管理工具SourceTree的安装、配置及团队协作方案,旨在帮助开发者更高效地进行版本控制和项目管理。 ... [详细]
  • Struts与Spring框架的集成指南
    本文详细介绍了如何将Struts和Spring两个流行的Java Web开发框架进行整合,涵盖从环境配置到代码实现的具体步骤。 ... [详细]
author-avatar
awdewqd65_988
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有