Java中文问题的解决mysql,oracle,servlet,jsp

王朝mysql·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

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 开头加上:

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航