Java 中文问题的解决
类别: JAVA教程
Java 中文问题一直困扰许多学习者。总结了下面的一些情况的解决方法。
希望对大家有帮助。
连接 Mysql Database Server:
-------------------------------------------------------------------------------
mysql 不支持 unicode,所以比较麻烦。
将 connectionString 设置成 encoding 为 gb2312
String connectionString
= "jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=gb2312";
测试代码:
String str = "汉字";
PreparedStatement pStmt = conn.prepareStatement("INSERT INTO test VALUES (?)";
pStmt.setString(1,str);
pStmt.executeUpdate();
数据库表格:
create table test (
name char(10)
连接 Oracle Database Server
-------------------------------------------------------------------------------
在把汉字字符串插入数据库前做如下转换操作:
String(str.getBytes("ISO8859_1","gb2312"
测试代码:
String str = "汉字";
PreparedStatement pStmt = conn.prepareStatement("INSERT INTO test VALUES (?)";
pStmt.setString(1,new String(str.getBytes("ISO8859_1","gb2312";
pStmt.executeUpdate();
Servlet
-------------------------------------------------------------------------------
在 Servlet 开头加上两句话:
response.setContentType("text/html;charset=UTF-8";
request.setCharacterEncoding("UTF-8";
JSP
-------------------------------------------------------------------------------
在 JSP 开头加上:
<%@ page contentType="text/html; charset=gb2312" %>
希望对大家有帮助。
连接 Mysql Database Server:
-------------------------------------------------------------------------------
mysql 不支持 unicode,所以比较麻烦。
将 connectionString 设置成 encoding 为 gb2312
String connectionString
= "jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=gb2312";
测试代码:
String str = "汉字";
PreparedStatement pStmt = conn.prepareStatement("INSERT INTO test VALUES (?)";
pStmt.setString(1,str);
pStmt.executeUpdate();
数据库表格:
create table test (
name char(10)
连接 Oracle Database Server
-------------------------------------------------------------------------------
在把汉字字符串插入数据库前做如下转换操作:
String(str.getBytes("ISO8859_1","gb2312"
测试代码:
String str = "汉字";
PreparedStatement pStmt = conn.prepareStatement("INSERT INTO test VALUES (?)";
pStmt.setString(1,new String(str.getBytes("ISO8859_1","gb2312";
pStmt.executeUpdate();
Servlet
-------------------------------------------------------------------------------
在 Servlet 开头加上两句话:
response.setContentType("text/html;charset=UTF-8";
request.setCharacterEncoding("UTF-8";
JSP
-------------------------------------------------------------------------------
在 JSP 开头加上:
<%@ page contentType="text/html; charset=gb2312" %>
- 上一篇: 指定日期的农历日期
- 下一篇: 玩转Java的CLASSPATH
-= 资 源 教 程 =-
文 章 搜 索