1,今天同事让帮忙写一个查询,但是Oracle得编码格式是US7ASCII。我在网上查了一下,有的说需要修改注册表:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0\NLS_LANG 的值为SIMPLIFIED CHINESE_CHINA.ZHS16GBK,或者修改一个系统变量NLS_LANG.这两种方法我没有试,因为对于系统级别的方案我都不太喜欢用,最后终于找到了
new String(rs.getObject(fields[i]).toString().getBytes("iso-8859-1"),"GBK")
虽然费事了一些,需要每个字段都转码一遍,但是用起来顺手多了。同样的,检索条件是中文的话,别忘了
new String(condition.getBytes("GBK"),"iso-8859-1")
2,只顾给同事忙活了,忘了自己的项目用的mysql,读写,插入都是乱码,用了oracle的方法,不好用,网上查查,有些是jsp的,以前用过好用,可是这次是c/s的。用不上。有人说写个过滤器,嫌麻烦一个,再者用到c/s不会用
。愿意费劲搜,不愿意费劲写。呵呵。最后终于找到了高人的专栏。我把我需要的内容拿了过来,他还有好多方法,一共四种。我只用修改连接url时的参数的方法。因为怕影响到其他项目,ini文件就不改了,另外getBytes的方法试了不好用。
方法如下:
=========================================================
//装载mysql-jdbc驱动
Class.forName("com.mysql.jdbc.Driver").newInstance();
//连接数据库
Connection sqlCon = DriverManager.getConnection( "jdbc:mysql://localhost:3306/test?user=root&password=1&useUnicode=true&characterEncoding=utf-8" );
另外把这个大侠的收藏了。
参考资料:java与mysql乱码的问题
http://blog.csdn.net/liuxueyongyu/archive/2008/01/05/2026788.aspx
分享到:
相关推荐
在使用MyBatis框架进行数据操作时,可能会遇到字符编码问题,导致乱码现象。这里主要探讨的是关于MyBatis(以及它...总的来说,解决MyBatis乱码问题的关键在于确保数据传输的每个环节都使用一致且兼容中文的字符编码。
jdbc连接mysql出现了乱码,总结起来就是里面的四个编码方式是一样的时候,就不会乱码了,简之,客户连接数据库返回结果(编码必须一致)。
在本文中,我们将深入探讨如何解决Oracle数据库中的乱码问题,并尝试将其理论应用扩展到其他类型的数据库系统。 首先,我们要了解数据库的字符编码。Oracle数据库支持多种字符集,如US7ASCII、WE8ISO8859P1、AL32...
《MySQL字符集与乱码问题分析》一文深入探讨了字符编码的历史背景、技术细节以及在MySQL中的应用,尤其关注解决常见的乱码问题。本文将根据提供的内容摘要,详细阐述其中涉及的关键知识点。 ### 字符集背景知识 ##...
本篇将详细梳理Java中的字符编码相关知识点,帮助开发者解决实际工作中遇到的各种乱码问题。 #### 二、基础知识 1. **编码与解码** - **编码**:将字符转换为字节序列的过程。 - **解码**:将字节序列转换为字符...
在MySQL数据库中,字符集和乱码问题是一个常见的困扰,主要涉及到字符的编码方式和排序规则。字符集决定了数据如何存储和表示,而乱码通常是因为字符集设置不一致或者不兼容导致的。本文将深入探讨MySQL的字符集概念...
Java中的中文编码问题是一个复杂而常见的议题,尤其是在跨平台开发中。本文主要涵盖了Java处理中文字符编码的关键点,包括Java虚拟机(JVM)的初始配置、编译过程中的编码设置、文件读写操作、XML文件处理以及字符串...
当与MySQL、Oracle等数据库交互时,需要确保数据库连接URL、JDBC驱动以及数据库表的编码设置与Java程序保持一致。 对于图片文件中的中文问题,Java的`ImageIO`类在读取或写入含有中文文件名的图片时,需要额外处理...
"test.java"和"Data.java"这两个文件可能是用来演示或解决乱码问题的Java源代码。在Java编程中,文件读写、网络通信等操作都需要指定正确的字符编码。例如,如果一个Java程序在读取包含中文字符的文本文件时,没有...
不同的数据库有不同的处理方式,例如Oracle需要在数据库创建时指定GBK编码,SQL Server 2000推荐使用nvarchar/nchar类型存储文本,MySQL则可以通过连接字符串设置`useUnicode=true`和`characterEncoding=gb2312`来...
`characterEncoding=utf8`则指定了字符编码为UTF-8,这样可以保证中文等非ASCII字符正确存储和显示,避免出现乱码问题。这两个参数对于处理包含多语言或者中文数据的数据库特别重要。 `mysql-connector-java-5.1.16...
* 字符集概念:快速解决问题、字符集、MySQL 字符集等。 * 字符集优先级:字段→表→库→服务器端。 九、校对集 * 字符比较:ASCII 比较。 * 校对集工作:查看 SHOW COLLATION。 * 校对集设置:表选项中 COLLATE=...
当涉及到数据库操作时,确保数据库的字符集设置也支持UTF-8,比如MySQL中的`utf8mb4`或Oracle的`AL32UTF8`。 7. **HTTP响应头**: 如果需要在HTTP响应头中指定编码,可以添加`Content-Type: text/html; charset=...
- **编码问题**:对于非ASCII字符,确保设置正确的字符集以避免乱码。 在实际开发中,通常会使用连接池(如C3P0、Apache DBCP或HikariCP)来管理和复用数据库连接,提高性能并避免资源浪费。此外,还可以使用DAO...
在IT行业中,中文乱码是一个常见的问题,尤其是在开发涉及多种技术平台的应用时,如Eclipse、SQL和JSP。这通常发生在数据的输入、存储和显示过程中,由于字符编码不一致导致的。以下是对这个问题的详细分析和解决...
Java字符编码转换是Java开发中一个重要的主题,尤其是在处理多语言环境和跨平台问题时。在Java中,字符编码涉及到源代码、文件读写、网络通信等多个方面。下面将详细阐述Java字符编码转换的一些关键知识点。 首先,...
Java字符编码转换是Java开发中一个重要的概念,尤其...总之,理解并掌握Java中的字符编码转换是解决多语言支持和数据一致性问题的关键,开发者需要对不同环境下的编码设置有所了解,并能熟练运用相关API进行编码转换。
例如,Oracle需要在创建数据库时指定GBK编码,SQL Server 2000推荐使用nvarchar/nchar类型存储文本,以避免编码问题。连接MySQL时,可以在连接字符串中设置`useUnicode=true&characterEncoding=gb2312`来指定字符集...
Oracle需要在数据库创建时指定GBK编码,SQL Server 2000推荐使用`nvarchar/nchar`类型存储文本,MySQL则可以通过连接字符串设置`useUnicode=true`和`characterEncoding=gb2312`来确保正确的编码。 总之,理解并掌握...