站内搜索: 请输入搜索关键词

当前页面: 开发资料首页JSP 专题JSP/JDBC MySQL乱码问题~~~

JSP/JDBC MySQL乱码问题~~~

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

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 选单 ToolsEnterprise SetupDatabase 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 测试,这次红字就会变成正常的黑字了.

↑返回目录
前一篇: 学习顺便翻译:理解jsp模式2架构——MVC设计模式探险
后一篇: 自己写的一个JSP小游戏21点,记录一下