博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Seam开发环境中的中文乱码问题
阅读量:6469 次
发布时间:2019-06-23

本文共 1167 字,大约阅读时间需要 3 分钟。

Seam是个很好很强大的Java框架,但在中国开发就不可避免的要遇到中文乱码问题,这个问题在Windows下或Linux下以GB2312为local的环境下尤为突出,也很头痛。我的应对就是抓住UTF-8编码,无论是应用服务器、数据库还是网页界面,全部大一统的使用UTF-8编码,即可轻松搞定。具体分述如下:

1、应用服务器

如果是JBOSS 5.1.0.GA的话,请查看%JBOSS_HOME%\server\default\deploy\jbossweb.sar\server.xml文件内容:

<Connector protocol="HTTP/1.1" port="8080" URIEncoding="UTF-8" address="${jboss.bind.address}" connectionTimeout="20000" redirectPort="8443" />

如果标红的这句没有的话,请添加!这样就完成了应用服务器的UTF-8设置。

2、数据库

数据库的UTF-8设置有两部分内容:

其一是在创建数据库时,使用utf-8编码方式创建数据库,由于Seam支持的数据库种类繁多,而平时我们基于也都是使用工具来创建数据库的,所以只需要在用工具创建数据库时,将其编码选成utf-8即可。

其二是必须在连接数据库的URL上指定编码,如下所示(以MySQL为例):

jdbc:mysql://数据库主机域名或IP地址:数据库端口号/数据库名?useUnicode=true&amp;characterEncoding=utf-8

注意:上面这句是没有分段的!!

这个可以在seam setup中设置,也可以在生成项目的resources目录中的lpms-dev-ds.xml、lpms-prod-ds.xml(JBoss)或glassfish-resources-dev.xml、glassfish-resources-prod.xml(GlassFish)中修改。

3、网页界面

在网页界面上,Seam已经使用了UTF-8做为它的界面编码,可以在生成项目的view\layout目录中查看template.xhtml文件内容:

 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>

只要该文件有上述标红内容即可。

其实不只是Seam框架,其它任何网页编程,无论是JAVA还是PHP,只要抓住这个原则,基本都能轻松搞定中文乱码问题,最后就是再一次呼吁大家都统一使用UTF-8编码。

本文转自 firehare 51CTO博客,原文链接:http://blog.51cto.com/firehare/585354,如需转载请自行联系原作者

你可能感兴趣的文章
朝韩合并的几个好处
查看>>
<05>linux的文本基础操作
查看>>
对Pthread线程进行简单的类封装
查看>>
用户登录程序实现--基于MYSQL (自己导入jar包)
查看>>
Fedora14安装后配置
查看>>
test
查看>>
2014年,什么工作最吃香?数据存储架构师!
查看>>
css 常见的盒模型
查看>>
Linux crontab 命令详解(含配置文件路径)
查看>>
安装rrdtool报错:Can't locate ExtUtils/MakeMaker.pm in @INC
查看>>
scrollView中内部控件的悬停
查看>>
在一个form中有两个submit,值分别为修改和删除,如何在提交时用js判断submit值为修改还是删除呢...
查看>>
flash重点积累
查看>>
寻找第k元
查看>>
PHP极速开发框架LotusAdmin page版发布
查看>>
display属性
查看>>
REVEAL APP for IOS 永久试用
查看>>
雷林鹏分享:PHP 变量
查看>>
实现用户要求的若干道2年级四则运算题程序测试
查看>>
dataList中实现用复选框一次删除多行问题
查看>>