其实以下总结适合于任何hibernate+mysql的情况;
步骤1:在创建数据库Schema的时候请指定编码,例如mysql,就用这样的语句来建立Schema:
create schema xxxx default character set utf8;
这一步必须这样,因为至少我在网上还没找到hbm2ddl的配置方法使得hibernate生成的数据库表的编码能被指定,那么为schema设置一个默认的编码就是最简便的方法;当然,你也可以不在schema上设置默认编码,等到hibernate生成表之后,在一个一个表地去改编码。具体可查阅数据库帮助文档。
“步骤1”得不到确认的话,下面的步骤可以忽略;
步骤2:在工程中的每一个页面,设置meta信息
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
这个不多解释了,设置了这个后,起码你的页面能“容得下”中文了。这一步建议在模板技术里解决,在最外层的模板里加上这个meta就行了,不用每个页面都加。
至此,你会发现直接写死在页面上的中文没问题;直接用数据库管理客户端的console插入的中文也没问题;就是经由程序插入的中文数据有问题;那么:
步骤3:指定数据库连接url的参数,例:
jdbc:mysql://localhost:3306/data115?useUnicode=true&amp;characterEncoding=utf-8
这样,经由程序插入的数据应该也能行了。
最后,有时候需要用GET方式在url的参数里传中文,url里的中文是需要被编码之后才能传的,像tomcat默认的uriEncoding是iso-8859-1,这会导致经由url传过来的中文值变乱码;这就需要在server.xml的connector节点里配置“URIEncoding='UTF-8'”,例如:
<Connector port="8080" address="${jboss.bind.address}"
maxThreads="250" maxHttpHeaderSize="8192"
emptySessionPath="true" protocol="HTTP/1.1"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding='UTF-8'/>
我这个是jboss的,server.xml位置在deploy/jboss-web.deployer下,tomcat的话很好找了,配置起来都一样。
最最后,你是不是认为还有一招“filter”的方式?以前用过一段时间struts的时候filter很管用,但现在我在seam下试验过后发觉有没有这个filter都没关系,只要确认上述4步骤那么乱码应该就能解决了;我估计如果框架程序里没有硬编码使用非UTF-8的字符集来encode的话都用不着filter.
分享到:
相关推荐
整理自jboss seam 中文站,压缩为chm格式,便于广大jboss seam爱好者阅读,所有版权归jboss seam中文站所有。
**JBoss Seam组件中文手册** **一、Seam框架概述** Seam是一个开源的企业级Java框架,由JBoss公司开发,旨在简化Java EE应用程序的开发。它将多种技术如JavaServer Faces (JSF),Java Persistence API (JPA),EJB 3...
**JBoss Seam 中文文档集合概述** JBoss Seam 是一个开源的应用框架,它结合了JavaServer Faces (JSF)、Java Persistence API (JPA)、Enterprise JavaBeans (EJB) 3.0 和其他Java EE组件,旨在简化企业级开发。这个...
《JBoss Seam:超越Java EE的简易与强大》是一本深度探索JBoss Seam框架的权威著作,由Michael Yuan和Thomas Heute共同撰写。本书聚焦于JBoss Seam框架,旨在为读者提供一个全面、深入的理解,以掌握其在企业级应用...
这包括了 Eclipse、JBoss Application Server、JBoss Seam、JBoss Tools 以及 MySQL 数据库等组件的下载、安装与配置。这些步骤对于初次接触 JBoss Seam 的开发者来说非常重要,能够帮助他们快速搭建起一个功能完备...
### JBoss Seam中文版知识点详解 #### JBoss Seam简介 JBoss Seam是一个强大的企业级应用开发框架,基于Java EE标准,特别强调简化Web应用的开发流程。它通过整合多种技术如JSF、EJB 3.0等,提供了一种更为高效、...
标题中的“Jboss seam3 实战”表明,本文将重点介绍JBoss Seam框架的第三个版本的实际应用。JBoss Seam是一个开源的Java EE框架,它通过依赖注入和会话模型,简化了基于Java EE的企业级应用开发。Seam框架为开发者...
标题:JBoss Seam入门介绍 描述:本文将详细介绍JBoss Seam框架的核心概念、关键特性以及如何构建基于Seam的应用程序。Seam作为一个企业级Java Web应用框架,它将Java EE和JSF无缝集成,旨在填补Java EE 5.0中缺失...
【JBoss Seam】是Java企业级应用开发框架,它整合了JSF(JavaServer Faces)、EJB(Enterprise JavaBeans)3.0、JPA(Java Persistence API)以及一系列其他技术,为开发人员提供了一个强大的全栈式解决方案。Seam...
### 深入浅出JBoss Seam:整合与强化Java EE框架 #### 一、引言 JBoss Seam是一款基于Java EE 5.0的轻量级框架,它旨在简化企业级Web应用的开发过程,并增强应用的可扩展性和开发者的生产力。本文将详细介绍JBoss ...
[TipTec Development] JSF & Facelets & JBoss Seam 核心技术 (英文版) [TipTec Development] Essential JSF, Facelets & JBoss Seam (E-Book) ☆ 出版信息:☆ [作者信息] Kent Ka Iok Tong [出版机构] TipTec ...
- **使用JSF 1.2 RI**:提供了如何在JBoss平台上使用JSF 1.2参考实现来部署和运行Seam应用的具体步骤。 #### 三、结语 通过以上内容的学习,读者可以全面了解JBoss Seam框架的核心功能和技术特点,掌握如何使用...
### jBoss EAP 6.2 或 AS 7 以上乱码问题解决 #### 背景介绍 在使用jBoss Enterprise Application Platform ...通过以上步骤,可以有效地解决jBoss EAP 6.2 或 AS 7 以上的乱码问题,提高应用的可用性和用户体验。
### 关于《Beginning JSF2 APIs and JBoss Seam》的知识点总结 #### 一、书籍简介与背景 《Beginning JSF2 APIs and JBoss Seam》是一本深入介绍JavaServer Faces 2(简称JSF2)及其相关API以及JBoss Seam框架的...
### JBoss Seam 2.01GA REF DOC #### 引言:JBoss Seam概览与功能介绍 JBoss Seam 是一个为简化企业级 Java 应用开发而设计的框架。它结合了 JavaServer Faces (JSF)、Java Persistence API (JPA) 和 Java ...
### JBoss Seam 中文文档知识点概述 #### 一、JBoss Seam 简介 JBoss Seam 是一款基于 Java EE 的应用开发框架,它通过提供一套丰富的组件模型和灵活的应用结构,极大地简化了企业级应用的开发过程。Seam 结合了 ...
《深入浅出JBoss Seam》 JBoss Seam是一个旨在简化企业级Web应用开发的轻量级框架,它补充和完善了Java EE 5.0的标准。Java EE 5.0虽然包含了EJB 3.0和JSF 1.2等核心框架,但它们各自独立,缺乏统一的编程模型。...