jsp到oracle中文乱码问题,Oracle数据库和JSP连接要注意的编码问题有哪些?

因为JAVA的开发者是老外,所以他们对中文的支持并不是太好,这一点让不少的我们感到很是头痛,也就是我们通过说的汉字编码问题吧,关于一些汉字编码的规范我就不多说了,我主要是谈谈在和oracle数据库连接时的一些小问题,不过这些小问题很是让人头痛的。

1、在插入到数据库中的中文问题要转换成编码

2、从数据库中读到中文又要转换成编码

让我们看一个编码的JAVA代码:

//ECov。java

import java。io。UnsupportedEncodingException;

public class ECov

{

public static String asc2gb(String asc){

String ret;

if(asc==null)return asc;

try{

ret=new String(asc。

getBytes("ISO8859_1"),"GB2312");

}

catch(UnsupportedEncodingException e){

ret=asc;

}

return ret;

}

public static String gb2asc(String gb){

String ret;

if(gb==null)return gb;

try{

ret=new String(gb。

getBytes("GB2312"),"ISO8859_1");

}

catch(UnsupportedEncodingException e){

ret=gb;

}

return ret;

}

public static int byte2int(byte b){

return ((-1)>>>24)&b;

}

}

其实这段代码的意思也就是把两种方法合而为一了。

在进行数据库插入时要用ECov。gb2asc(arg),要在读时要用ECov。asc2gb(arg)。其中最关键的一点就是Oracle好像只认识ISO8859_1这种格式的编码吧(仅是我的想法)。

全部

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值