java连接oracle为什么不用设置编码方式

java启动参数不管-Dfile.encoding加的是什么,从oracle查询返回的中文string结果都是正确的,为什么呢?我的理解是java从oracle查询的结果都是字节流,java的string用的utf16储存的,要正确的从字节流存为utf16,必定得知道oracle存储数据的字符集是什么,但是java这边字符集怎么设置都不影响最终的结果,所以java从oracle查询到的中文是永远不会乱码吗?就是oracle的中文字符到java这边的解析流程不太清楚,也没查到资料,求知道的大神能解答一下,谢谢!


回答:

oracle 默认字符集 utf16,于是就直接屏蔽了乱码问题


回答:

-Dfile.encoding 应该是解析文件用的字符集。
如果是linux,你应该是设置 LANG 环境变量,改变语言与字符集。(只要字符集不一致 会出现乱码的)

以上是 java连接oracle为什么不用设置编码方式 的全部内容, 来源链接: utcz.com/p/944600.html

回到顶部