解决之道:
将Java/J2EE系统的统一编码定义为UTF-8。UTF-8编码是一种兼容所有语言的编码方式,惟一比较麻烦的就是要找到应用系统的所有出入口,然后使用UTF-8去“结扎”它。
一个J2EE应用系统需要做下列几步工作:
- 开发和编译代码时指定字符集为UTF-8。JBuilder和Eclipse都可以在项目属性中设置。
- 使用过滤器,如果所有请求都经过一个Servlet控制分配器,那么使用Servlet的filter执行语句,将所有来自浏览器的请求(request)转换为UTF-8,因为浏览器发过来的请求包根据浏览器所在的操作系统编码,可能是各种形式编码。关键一句:
request.setCharacterEncoding("UTF-8")。
网上有此filter的源码,Jdon框架源码中com.jdon.util.SetCharacterEncodingFilter
需要配置web.xml 激活该Filter。
- 在JSP头部声明:<%@ page contentType="text/html;charset= UTF-8" %>。
- 在Jsp的html代码中,声明UTF-8:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- 设定数据库连接方式是UTF-8。例如连接MYSQL时配置URL如下:
jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8
注意,上述写法是JBoss的mysql-ds.xml写法,多亏网友提示,在tomcat中&要写成&即可。一般其他数据库都可以通过管理设置设定UTF-8
- 其他和外界交互时能够设定编码时就设定UTF-8,例如读取文件,操作XML等。
笔者以前在Jsp/Servlet时就采取这个原则,后来使用Struts、Tapestry、EJB、Hibernate、Jdon等框架时,从未被乱码困扰过,可以说适合各种架构。希望本方案供更多初学者分享,减少Java/J2EE的第一个拦路虎,也避免因为采取一些临时解决方案,导致中文问题一直出现在新的技术架构中。
分享到:
相关推荐
然而,在处理UTF-8编码的中文文件时,Source Insight 3.5可能会出现中文乱码的问题,这对于中文开发环境来说是个不小困扰。 "source insight 3.5 UTF-8中文乱码插件"是为了解决这个问题而设计的。这个插件或补丁...
总之,"source insight UTF-8插件"是一个针对性的解决方案,旨在增强Source Insight对UTF-8编码的支持,特别是在处理中文内容时。通过正确安装和使用这个插件,用户可以享受到更顺畅的代码阅读和编辑体验,消除语言...
UTF-8是一种广泛使用的字符编码标准,能表示世界上大部分语言的字符,而GBK是中国大陆常用的汉字编码,对于一些特殊的字符,GBK可能无法识别。 描述中提到的“Invalid byte 1 of 1-byte UTF-8 sequence”错误提示...
UTF-8是一种广泛使用的Unicode字符编码方案,它可以表示Unicode字符集中的所有字符,覆盖了全球大部分语言的文字。在编程环境中,UTF-8编码因其可读性强、跨平台兼容性好等特点,已经成为许多项目的标准编码方式。 ...
UTF-8是一种广泛使用的Unicode字符编码方案,它可以支持几乎所有的字符集,包括中文、日文和韩文。然而,在处理包含这些非ASCII字符的JSP文件时,如果编码设置不正确,就可能导致乱码。 首先,我们来分析一下乱码...
针对这种情况,"Eclipse项目的GBK编码转为UTF-8插件"提供了一个便捷的解决方案。这个插件可以快速地将整个Eclipse项目中的GBK编码文件批量转换为UTF-8编码,无需手动操作。使用该插件,用户只需在Eclipse中安装并...
UTF-8是一种广泛使用的多字节字符编码,能够支持全球大部分语言,包括中文,使得开发者在创建多语言网站时更加便利。 1. **百度编辑器介绍** 百度编辑器,也称为UEditor,是由百度公司推出的一款开源富文本在线...
这里我们关注的是如何在Source Insight这款强大的源代码查看和编辑工具中正确显示UTF-8编码的中文字符。Source Insight在Windows环境下可能会遇到无法识别Linux系统下以UTF-8编码保存的中文字符的问题,导致显示为...
UTF-8是一种多字节字符编码,能支持全球大部分语言,包括中文,因此它对于开发多语言网站至关重要。 **1. eWebEditor简介** eWebEditor是一款基于JavaScript的富文本编辑器,允许用户在网页上进行类似Word的文本...
UTF-8则是一种国际通用的Unicode编码,能够表示世界上几乎所有的字符,包括中文、英文、日文等多国语言。由于历史原因,不同的系统或软件可能会使用不同的编码标准,这可能导致在打开或读取文件时出现乱码问题。 ...
而UTF-8是一种国际通用的多语言字符编码方案,能支持全球大部分语言,包括简体中文、繁体中文以及各种非中文文字。 标题“gbk网页模板转utf-8的绿色小工具”所涉及的知识点主要在于网页模板的字符编码转换。GBK到...
UTF-8是Unicode的一种实现方式,它使用1至4个字节来表示一个字符,使得英文字符使用较少的字节,而复杂语言如中文、日文和韩文则使用更多字节。这种设计使得UTF-8在互联网上得到了广泛应用,因为它允许旧的ASCII兼容...
2. **DOMINO配置修改**: 如果使用的是IBM Domino服务器,需要确保服务器文档中的Internet协议(Domino Web引擎字符集)设置为utf-8。具体操作是,在相关设置中选择“在HTML表单中使用UTF-8”,并重启服务器以使更改...
UTF-8编码是一种广泛使用的字符编码标准,尤其在文本文件和网页中常见。它能够表示世界上几乎所有的文字,包括汉字和其他非拉丁字符。UTF-8的全称是“8位Unicode转换格式”,它以1到4个字节来编码Unicode字符。 在...
总的来说,解决Source Insight 3.5不支持中文UTF-8问题需要理解编码原理,熟悉Source Insight的配置,以及利用社区资源。通过上述方法,用户可以克服这个障碍,使Source Insight更好地服务于他们的编程工作。
总的来说,"Moment 时刻 【商业】(gbk+utf-8)"代表了一种针对商业用户的、具备GBK和UTF-8双编码支持的解决方案,可能是Discuz!论坛系统中的一个组件。用户需根据自身的系统环境和需求,选择合适的编码版本,以确保...
这个UTF-8源码版本的SmartUpload提供了一个解决方案,使得开发者无需花费过多精力去解决乱码问题,可以更专注于应用的其他核心功能开发。在实际项目中,确保文件上传的稳定性和兼容性是提高用户体验的关键,而这个...
UTF-8编码则表明该系统的字符集支持多语言,能够处理包括中文在内的多种语言内容,有利于面向全球市场运营。 标签 "ecshop" 明确了这个文件与ECShop软件有关,让我们知道这是一个与电商运营相关的软件解决方案。 ...
本文将深入探讨gvim中解决UTF-8文件中文乱码的方法,旨在为开发者提供一个清晰的解决方案。 ### 一、理解UTF-8编码与中文乱码现象 UTF-8是一种可变长度的字符编码标准,用于处理全球各种语言的字符集,包括中文。...
然而,在处理UTF-8编码的中文文件时,可能会遇到汉字乱码的问题。本文将详细解析如何解决Source Insight中的UTF-8中文乱码问题。 首先,我们需要理解问题的根源。Source Insight默认可能并不支持UTF-8编码,尤其是...