`
fastwind
  • 浏览: 320030 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

jsp编码讨论

阅读更多
为每个jsp页面设置了其编码格式(utf-8),但传递数据到另一页面时依然显示为乱码?   首先要需要了解的是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。   个人认为,将数据进行utf-8进行编码的目的(即将中文编码为%的形式),主要是为了在多层服务间进行数据传输时,防止发生字符丢失(如msn)。普通的web程序显然没有必要这样做,只要使用以上方法进行处理,就可以有效的解决乱码问题,从而结省存储空间。如果都像公司的SC系统那样,将一个汉字编码为18个字符后,再存储到数据库中,抛开效率不说,就存储空间的浪费就够人受的,要知道,那是需要银子地!
分享到:
评论

相关推荐

    jspSmartUpload.jar

    1.下载后,直接放在web项目的WebRoot/...后面一个是向后台传值时使用的编码格式,也就是给jspSmartupload使用的,和后台接受时使用的编码格式一致。 3.祝大家使用愉快,上面也是经验所得,还有什么不懂得可以互相讨论。

    JSP/Servlet 中的汉字编码问题

    网上就 JSP/Servlet 中 DBCS 字符编码问题有许多优秀的文章和讨论,本文对它们作一些整理,并结合 IBM WebSphere Application Server 3.5(WAS)的解决方法作一些说明,希望它不是多余的。内容: 问题的起源 ??????...

    JSP_Servlet 中的汉字编码问题.pdf

    网上就 JSP/Servlet 中 DBCS 字符编码问题有许多优秀的文章和讨论,本文对它们作一些整理,并结合 IBM WebSphere Application Server3.5(WAS)的解决方法作一些说明,希望它不是多余的。

    基于JSP技术的Web应用程序开发的安全策略_赵锋

    本文讨论了基于JSP技术的Web应用程序开发的安全策略。JSP是一种服务器端动态网页设计技术,广泛应用于电子商务、网上调查、网上查询等各种互联网应用中。然而,随着网络编程的便捷化和系统功能的强大化,系统的弱点...

    网页教程《跟姐姐学JSP》

    序言 1. 想用jsp做网站的朋友看过来 2. 预备知识 3. java环境配置 3.1. 安装jdk 3.2. 配置tomcat服务器 ...16.2. 对手工将jsp转换为servlet的无用讨论 16.3. 胡乱解释一下session 16.4. 下载文件乱码

    JSP中文问题及一套整体解决方案

    讨论了JSP中出现中文问题的起源,并着重从编码角度解释了出现乱码的原因,最后给出了一套整体的中文问题解决方案.

    关于java中的编码转换问题(解决乱码问题)

    “字符与编码”是一个被经常讨论的话题,而时常出现的乱码对于开发者来说,更是一件极其厌恶的事。 而对于JAVA来说,在JSP输出、文件读写、甚至数据库访问等环节上,都有可能出现乱码现象,而之所以会出现乱码,都与...

    Java乱码问题解决

    在Java编程中,经常会碰到汉字的处理及显示问题,以不小心就会产生一大堆乱码或者问号。造成这种问题的根本原因是Java中默认...在这里,主要针对Tomcat中JSP开发容易出现的中文乱码问题进行讨论,一般有以下几种情况:

    基于jsp人力外包企业专用HR管理平台ssh+mysql源码.zip

    在此基础上,阐述了系统的实现和测试工作,重点介绍了系统中的主要功能组件和模块的编码实现,包括数据库访问组件实现、面向外包企业的人事管理系统目的在于提高外包企业人事管理效率和正确率,最终提升企业的盈利...

    毕业设计-基于JSP的人力外包企业专用HR管理平台ssh+mysql-设计与实现(源码+论文+视频).zip

    论文在JAVA技术、数据库技术等先进计算机技术的基础上,讨论了建设面向外包企业的人事管理系统所涉及的关键问题。并最终实现了一个基于SSH的人事管理系统。论文首先对面向外包企业的人事管理系统建设需求进行分析。...

    基于Java的移动学习系统的设计与实现【附源码】

    移动学习系统主要功能模块包括教师管理、学生管理、课程管理、课程作业管理、讨论管理、试卷管理、成绩管理,采取面对对象的开发模式进行软件的开发和硬体的架设,能很好的满足实际使用的需求,完善了对应的软体架设...

    java底层代码:泛型DAO+SSH+Proxool连接池+国际化语言

    2、采用Jsp-&gt;Action-&gt;Service-&gt;Dao的编码方式,封装了HibernateUtil、SpringUtil、HqlUtil等工具,以及简化了增删查改操作。 3、此底层包含泛型DAO、Proxool连接池、国际化语言、DateUtil工具、ExcelUtil报表工具、...

    基于遗传算法求解作业车间调度问题本科毕业设计论文

    本文在已有算法基础上详细讨论了染色体编码方法并对其进行了改进。在研究了作 业车间调度问题数学模型和优化算法的基础上,将一种改进的自适应遗传算法应用在作 业车间调度中。该算法是将 sigmoid 函数的变形函数...

    iuhyiuhkjh908u0980

    在windows系统中,命令行中执行ant命令时,当指定的 构建脚本文件中包含中文字符,而构建脚本文件的编码是UTF-8时将会 Invalid byte 1 of 1-byte UTF-8 sequence. 的错误.这个问题尚未 知解决,故先采用GBK的编码. 2.在...

    软件工程课程设计银行储蓄管理系统(1).doc

    本文针对上述问题,采用软件工程的开发原理,依据软件流程过程规范,按照需求 分析、概要设计、详细设计、程序编码、测试、软件应用、软件维护等过程开发了一个 银行账户管理系统。采用VSC++作为开发工具,数据库...

    软件工程课程设计银行储蓄管理系统(2).doc

    本文针对上述问题,采用软件工程的开发原理,依据软件流程过程规范,按照需求 分析、概要设计、详细设计、程序编码、测试、软件应用、软件维护等过程开发了一个 银行账户管理系统。采用VSC++作为开发工具,数据库...

    Spring面试题

    他很大程度的简化DAO层的编码工作 3. hibernate使用Java反射机制,而不是字节码增强程序来实现透明性。 4. hibernate的性能非常好,因为它是个轻量级框架。映射的灵活性很出色。它支持各种关系数据库,从一对一到...

    PHP基础教程 是一个比较有价值的PHP新手教程!

    据我所知,JSP基于Java,因此Java程序员可以轻松开始编码。ASP只是一个一般的引擎,具有支持多种语言的能力,不过默认的并且是最常用的还是VBScript。 mod_perl与Perl一样强大,只是更快一些。 二、PHP入门 PHP...

    +Flex+集成到+Java+EE+应用程序的最佳实践(完整源代码)

    资源简介现有的 Java EE 应用 假定我们已经拥有了一个管理雇员...可以通过 ActionScript 编码创建该对象,也可以直接在 MXML 中定义一个 RemoteObject 对象,并列出其所有的方法: 清单 13. 定义 flexServiceRO ...

Global site tag (gtag.js) - Google Analytics