`
_Yggd
  • 浏览: 89910 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

javaweb应用与数据库交互乱码问题

阅读更多
首先要需要了解的是web容器默认编码是iso-8859-1,一个汉字占用两个字节,而在utf-8中一个汉字占用三个字节。所以在数据传递过程中,必须手动设定容器编码格式,否则会出现字符位丢失的情况。即3个字节变为两个字节,自然会变成乱码。
为什么保存到数据库中的数据都变成了乱码?
  原理同上,首先要搞清楚使用的数据库默认的编码格式,比如mysql默认的字符编码是ISO-8859-1。所以必须手动修改其默认编码格式。
  清楚了以上问题后,再来看如何解决utf-8的乱码问题。
1.设置web容器的编码格式。为你的servlet的doGet或doPost方法开始处加入如下代码:
request.setCharacterEncoding("utf-8");
   response.setCharacterEncoding("utf-8");
2.为每个jsp页面指定其编码格式。<%@ page pageEncoding="utf-8"%>
3.在连接数据库用的URL后加入:useUnicode=true;characterEncoding=utf-8 如:
  url="jdbc:mysql:///db1?useUnicode=true;characterEncoding=utf-8",
4.为指定数据库默认编码格式。在C:\WINDOWS目录下找到my.ini文件,并在[mysqld]中加入default-character-set=gbk,重新启动mysql服务。
  至此,乱码问题全部解决。起初总搞上去不清,为什么要将mysql的默认编码格式设置为gbk,后来由相关的资料得知utf-8默认输入编码方式为gbk,默认输出编码方式为utf-16be。


来源:http://blog.csdn.net/lichd_lcs/archive/2005/04/21/356749.aspx
分享到:
评论

相关推荐

    JavaWeb开发中的中文乱码问题分析及解决方案.docx

    - **数据库交互乱码**:如果数据库与应用程序之间的字符编码设置不匹配,也会导致数据存储和读取时出现乱码。 - **页面显示乱码**:页面渲染时,如果HTML文档声明的字符编码与实际使用的编码不一致,就会出现乱码。 ...

    java Web开发乱码解决方案

    在Java Web开发过程中,中文乱码问题是一种常见的技术难题,尤其在处理客户端与服务器间的数据交互时更为突出。本文将详细介绍Java Web开发中出现乱码的原因,并提供一系列解决方案。 #### JSP页面配置及乱码成因 ...

    解决jsp中文乱码问题(转)

    在与数据库交互时,如果中文数据出现乱码,可能是由于数据库连接配置不当。例如,在MySQL中,可以通过在数据库URL中添加`useUnicode=true&characterEncoding=GBK`参数来指定字符集,确保数据库读写时使用正确的编码...

    javaweb乱码处理

    在Java Web开发中,乱码问题是一个常见的挑战,尤其是在处理用户输入、文件上传或数据库交互时。"javaweb乱码处理"这个主题涉及到多个环节,包括请求参数、响应输出、文件读写以及数据库存储等。下面将详细介绍如何...

    JavaWeb.pdf

    使用动态网页技术,可以使网页内容与数据库进行交互,实现数据的持久化和用户交互性,如用户登录、商品信息展示、用户信息管理等。 在JavaWeb技术中,服务器端的应用程序需要一个Web服务器来部署和运行。常用的Web...

    JAVAWEB大作业报告书

    - DAO层直接与数据库交互,执行SQL语句。 **3.4 出现的问题及解决** 1. **向数据库中插入数据出现乱码以及界面显示有中文乱码问题**:确保数据库字符集设置为UTF-8,同时在JDBC连接字符串中指定字符集,以及在JSP...

    19、JavaWeb.pdf

    但是动态web的优势在于可以实时更新,与数据库交互,适合需要实时性数据的场景,例如电商网站、论坛等。 在web服务器方面,技术讲解中提到了ASP、PHP和JSP/Servlet。ASP是微软推出的技术,通过在HTML中嵌入VB脚本...

    JavaWeb-source.txt

    在JavaWeb应用中,经常需要与数据库进行交互,主要技术有JDBC和ORM框架(如Hibernate、MyBatis)。 1. **JDBC (Java Database Connectivity)**:是Java中用来连接数据库的标准API,通过JDBC可以实现对数据库的操作...

    解决全站编码问题的javaWeb小项目

    当与数据库交互时,需确保数据库连接的字符集设置正确。例如,MySQL中可以在连接URL中指定`useUnicode=true&characterEncoding=utf8`。 6. **文件读写编码** 对于读取或写入文件,Java的`FileReader`和`...

    JavaWeb实训-jsp实现对于用户的注册

    总结来说,这个实训项目涵盖了Web开发中的关键部分:HTML表单设计,JSP的数据处理和内建对象的使用,以及JDBC进行数据库交互。同时,通过过滤器的实践,可以深化对字符编码问题的理解。通过完成这样一个项目,学习者...

    JavaWeb网上商城的设计与实现文档.docx

    总的来说,JavaWeb网上商城的设计与实现涉及到了Web开发的多个关键领域,包括MVC模式的应用、数据库交互、用户界面设计以及服务器端的业务逻辑处理。通过合理的架构设计和规范的编码实践,可以构建出高效、稳定且...

    JavaWeb开发实战宝典项目合集

    4. **Struts实现的功能**:Struts框架的两个应用场景——网站流量统计和解决提交中文乱码问题,揭示了Struts在处理HTTP请求、响应,以及国际化和异常处理等方面的能力。 5. **JSPSmartUpload实现上传与下载**:JSP...

    JavaWeb期末复习

    Servlet具有特定的作用,如处理客户端请求、与数据库交互等。Servlet生命周期包括三个阶段:初始化阶段由init方法负责,处理客户端请求由service方法负责,而销毁阶段则由destroy方法负责。在Servlet API的层次结构...

    JavaWeb-sales.txt

    根据提供的文件信息,我们可以推断出这是一篇与JavaWeb相关的文章或教程,但实际给出的部分内容似乎是乱码,无法直接获取有用的信息。因此,基于标题、描述和标签,我们将围绕JavaWeb的基础概念和技术栈来构建相关的...

    <留言本系统设计与开发>java应用与开发 练习作业

    - Servlet作为控制器,负责业务逻辑处理,接收和响应客户端请求,以及与数据库交互。 - JavaBean则作为模型层,封装数据和业务逻辑,提供属性访问和修改接口。 2. **熟悉MVC架构** - MVC(Model-View-Controller...

    JavaWeb网上图书商场完整项目(含相关素材文件)

    本项目通过一系列的步骤和技巧,展示了如何构建一个完整的JavaWeb应用——网上图书商城。从基础的工具库到复杂的业务逻辑处理,再到前端页面的设计与实现,每一个环节都经过精心设计和优化。这对于学习JavaWeb开发的...

    南昌大学javaweb大作业报告书.docx

    - **原因**:数据库编码格式与应用程序不一致。 - **解决方法**:确保数据库连接时使用正确的字符集,如`?useUnicode=true&characterEncoding=utf-8`,并在程序中设置字符编码。 ##### 3.4.2 弹出提示框问题 - **...

    JavaWeb笔记.pdf

    Java Web笔记的核心内容涉及到Java Web技术的学习与应用,包括了Web基础、Java Web技术栈、Web服务器、Tomcat服务器的使用与配置等关键知识点。 首先,笔记介绍了Web开发的基本概念,包括静态Web页面与动态Web页面...

Global site tag (gtag.js) - Google Analytics