JSP/JDBC MySQL乱码问题~~~

博客主要介绍了JSP处理中文时需将ISO8859_1编码转为GBK,还阐述了MYSQL操作中文的问题及解决方法,如插入、显示中文的编码处理和设定存储编码。此外,详细说明了JBuilder安装JDBC driver的步骤,包括添加到Library、指定ClassPath等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

綠起:
JSP的request 默认为ISO8859_1,所以在处理中文的时候,
要显示中文的话,必须转成GBK的,如下
String str=new String(request.getParameter("name").getBytes("ISO8859-1"),"GBK");
out.println(str);
这样就可以显示中文了

PS:一个很重要的是JDBC的驱动:我的目前是mysql-connector-java-3.0.10-stable-bin.jar。。

MYSQL操作时的中文问题:
这个要看MySQL的默认编码了,一般不调整的话为latin1其实和ISO8859_1一样,所以操作的时候要处理和他一致,不然就会乱码的

    1.插入中文:
    String sql2="INSERT INTO test (name) VALUES('"+request.getParameter("name")+"')"; 
    stmt.executeUpdate(sql2);
不用编码就可以插入了

    2.显示插入的中文:
    因为存入的是latin,所以显示的时候就要GBK一下
    String x=new String((rs.getString("title")).getBytes("ISO8859_1"),"GBK");
    out.println(x);

    3.设定存储编码:
 当然在MySQL为latin1编码时,也可以存的时候用GBK了
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/jsp?useUnicode=true&characterEncoding=GBK","root","");
str1="中文";
String sql2="INSERT INTO test (name) VALUES('"+str1+"')";
这样也可以很成功的插入了,呵呵

PS:老是忘记这个了~~~做个记号

Q:JBuilder如何安装JDBC driver
A:首先,取得数据库的JDBC的驱动,如Oracle的叫 Class12.zip,解开了一般都会包含一个jar的包,把该包或者多个文件加入到JBuilder的Library中。在工程属性中指定使用该文件。以上完成的其实就是把该文件增加到工程的ClassPath中去 ,如果大家还不明白可以参看JBuilder的帮助文件 ,如果你是用的是Borland的数据库组件可以参看JBuilder光盘中的文档。
你可以在点选 JBuilder 选单 Tools-->Enterprise Setup-->Database drivers. 建立一个新的 Library 里面包含此 JDBC Driver 的 xxx.jar ,将您的 JDBC Driver xxx.jar 置于某个不含 Space 的路径 (例如 C:/JBuilder7/Lib/xxx.jar) 后按对话框中左下角 New 按钮,出现 New Library Wizard 对话框为该 JDBC Driver Library 命名,接着将C:/JBuilder7/Lib/xxx.jar加到Library Path 内.完成后按下 OK,结束 New Library Wizard 对话框.若该 JDBC Driver 有包含原始程序代码及 JavaDoc , 在Configure Libraries 对话框右方一并加入. 完成后重新激活 JBuilder.激活 Database Pilot 测试,这次红字就会变成正常的黑字了.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值