JAVA ,SSH中文及其乱码问题的解决 6大配置点 使用UTF-8编码

标签: java ssh 中文 | 发表时间:2013-09-03 06:16 | 作者:risingsun001
出处:http://blog.csdn.net

JSP,mysql,tomcat下(基于struts2)中文及其乱码问题的解决 6大配置点 使用UTF-8编码

目前对遇到J2EE 开发中 中文及其乱码问题,参考网上资料做个总结, 主要是6大配置点:

1 struts2配置 2 数据库 3 页面 4 jdbc连接 5 tomcat 6.hibernate配置

以下解决方法不分顺序,大家按照自己的配置对比,同时也欢迎大家补充

1 struts2配置

 struts2在配置struts.properties文件中加上struts.i18n.encoding=UTF-8 或者在struts.xml里加上<constant name="struts.i18n.encoding" value="UTF-8" /> 有的朋友说加上struts.locale=zh_CN,但是我的struts.locale为en_GB没有问题.

2 数据库

2.1 mysql的表的编码方式,其DDL应该为: ENGINE=InnoDB DEFAULT CHARSET=utf8; 可以使用show create table tbname查看.

2.2 安装mysql数据库时就应该以utf8编码默认安装查看mysql数据库默认编码方式可以在其目录下my.ini文件中找到mysql和mysqld下default-character-set值为utf8或者在mysql数据库命令行下以"/s;"查看.

3 页面

每个页面上加上< %@page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %> 这样在jsp页面里,点右键,查看编码方式则为UTF-8.

4 jdbc连接

 设置characterencoding为UTF-8 如jdbc.mysql.url=jdbc:mysql://localhost:3306/db?useUnicode=true&amp;characterEncoding=UTF8

5 tomcat

为了保证get/post数据都采用相同的UTF8编码,我们在server.xml中进行了如下设置: <Connector port="8080" protocol="HTTP/1.1"                connectionTimeout="20000"                redirectPort="8443"  URIEncoding="UTF-8" />

其中,当当使用IIS作为webserver转发servlet/jsp请求时IIS是通过AJP协议,把请求转发到Tomcat监听的8009端口,所以需要配置端口8009的URIEncoding为UTF-8.

     msyql数据库安装时候需要默认编码方式或者使用MySQL Server Instance Config Wizard 配置,

在设置Configure the MySQL Server 5.0 server instance那里的时候选择Manual Selected Default Character Set / Collation 为 UTF8 而不是默认的 LATIN1 在MYSQL里查看得 mysql> /s;

-------------- E:/MySQL/MySQL Server 5.0/bin/mysql.exe  Ver 14.12 Distrib 5.0.51a, for Win32 (ia32) Connection id:          2 Current database: Current user:          root@localhost SSL:                    Not in use Using delimiter:        ; Server version:        5.0.51a-community-nt MySQL Community Edition (GPL) Protocol version:      10 Connection:            localhost via TCP/IP Server characterset:    utf8 Db    characterset:    utf8 Client characterset:    utf8 Conn.  characterset:    utf8 TCP port:              3306 Uptime:                25 sec Threads: 1  Questions: 4  Slow queries: 0  Opens: 12  Flush tables: 1  Open tables: 6  Queries per second avg: 0.160

    my.ini文件内容为

[mysql] default-character-set=utf8 # SERVER SECTION # ---------------------------------------------------------------------- # # The following options will be read by the MySQL Server. Make sure that # you have installed the server correctly (see above) so it reads this # file. # [mysqld] # The TCP/IP Port the MySQL Server will listen on port=3306 #Path to installation directory. All paths are usually resolved relative to this. basedir="E:/MySQL/MySQL Server 5.0/" #Path to the database root datadir="E:/MySQL/MySQL Server 5.0/Data/" # The default character set that will be used when a new schema or table is # created and no character set is defined default-character-set=utf8 ...........

6. H ibernate 配置

在hibernate.cfg.xml配置文件中加入这些来完成的

  1. <property name="connection.useUnicode">true</property>   
  2. <property name="connection.characterEncoding">UTF-8</property>

作者:risingsun001 发表于2013-9-2 22:16:40 原文链接
阅读:0 评论:0 查看评论

相关 [java ssh 中文] 推荐:

JAVA ,SSH中文及其乱码问题的解决 6大配置点 使用UTF-8编码

- - CSDN博客编程语言推荐文章
JSP,mysql,tomcat下(基于struts2)中文及其乱码问题的解决 6大配置点 使用UTF-8编码. 目前对遇到J2EE 开发中 中文及其乱码问题,参考网上资料做个总结, 主要是6大配置点:. 1 struts2配置 2 数据库 3 页面 4 jdbc连接 5 tomcat 6.hibernate配置.

使用纯java ssh方式连接linux服务器,并用此方式部署war到linux的tomcat下

- - Linux - 操作系统 - ITeye博客
纯java代码使用ssh方式登录linux服务. 实际应用中,可以使用这种方式上传部署web工程war包 并且部署启动tomcat 一个自动化完成所有工作 起到节省时间作用. 1.去 官网下载最新的jar包. 下面是我的java code 例子. /** * java ssh登录linux以后的一些操作方式 * @author liuxy * */ public class SchUnitJsch extends SchUnit{.

【转载】紧急:中文版putty、WinSCP、SSH Secure后门!请立即更新

- - 素包子
原文在http://www.youxia.org/2012/01/putty-WinSCP-SecureCRT-Backdoor.html 我再加个图 我曾经有一个朋友的服务器就是出现了下面说的1 3 4的问题,终于找到源头了. 凡是使用中文版putty、WinSCP、SSH Secure的用户请注意,它们很可能带有病毒,会导致root密码被盗走,进而盗取或破坏数据,利用服务器发攻击包等.

SSH Tunnel扫盲

- Jerry - 老王的技术手册 ( 我的新博客:http://huoding.com )
前些天,由于我不知道如何在Putty里拷贝字符而被朋友们取笑,着实糗了一把. 不过被别人B4的一大好处就是你会知耻而后勇,这阵子通过研读PuTTY 中文教程,估计以后不会再犯同样的错误了,在学习Putty的同时偶然发现自己对SSH Tunnel的了解很匮乏,所以便有了今天这篇笔记. SSH Tunnel有三种,分别是本地Local(ssh -NfL),远程Remote(ssh -NfR),动态Dynamic(ssh -NfD).

Jcseg java中文分词器

- - 企业架构 - ITeye博客
Jcseg[dʒɛ'​ke'sɛ]完整版本(源码, 词库, 帮助文档, 词库管理工具, jar文件)下载:  http://sourceforge.net/projects/jcseg . jcseg是使用Java开发的一个开源中文分词器,使用流行的mmseg算法实现,并且提供了最高版本的lucene, solr, elasticsearch(New)的分词接口..

SSH那些事儿

- Mao.. - Visual Mao++
不知道读者中知道SSH有多少,我想除了pro们,剩下的都是用VPS. 一般来说,用SSH就是用ssh –D[1]这个动态转发接口,至于做什么用也就不明说了,大家都懂. 熟悉hg的都知道可以从“ssh://”地址克隆repository[2],那剩下的呢. 故事的起因是office desktop在department firewall之内,用laptop的remote desktop(RDP)连接office需要先用PuTTY之类的神器连接department firewall(OpenBSD的哦),然后再用RDP连接desktop[3].

linux配置ssh+rsync

- - CSDN博客推荐文章
sftp    文件共享 类似ftp  ssh  secure file transfer client. scp    文件共享 类似cp. #PermitRootLogin yes    改成no 禁止root直接登录. #Port 22    改变ssh的默认端口号   要打开注释. 登录  ssh  [email protected]  然后输入密码就好了.

注册送 SSH Tunnels 账号

- jason - 细节的力量
来源:http://www.hiwaley.com/2098.html. 赠送 SSH Tunnels 账号,用途请Google “SSH Tunnels“. 长期有效,直到本站倒闭,或者某天墙塌了. SSH的账号和Blog的账号一样,如需修改SSH的密码,直接修改Blog的密码即可. 注册帐号后,需要配置SSH客户端和浏览器,具体方法如下:.

免费VPN & SSH信息

- jason - iGFW
注册即送免费128M流量的PPTP和L2TP,OPENVPN. 注册地址:http://www.jpvpn.net/register. 配置文件下载:http://sharesend.com/gpebc. 以下15组免费帐号,用户名和密码一样. 用户名和密码填写在vegas目录下的Acct.txt文件里.

优秀的Android SSH工具

- 牛牛 - Solidot
Peter Jackson 写道 Secure Shell(SSH)是工作在应用层和传输层之上的网络安全协议,利用128位公钥加密接收和发送的信息. SSH能保证两个主机之间的通信不被中间人拦截. 作为一种安全保护协议,SSH常被用于安全数据通信和远程命令执行. 其它常用用途包括使用SSH文件传输协议或安全复制协议在机器之间建立安全隧道或传输文件.