还是数据库乱码问题!搞不明白!

gongyali2005 2007-06-18 11:37:02
<%@page contentType="text/html;charset=gb2312"%>
<%@page import="java.sql.*"%>
<%@page import="java.util.*"%>
<%request.setCharacterEncoding("gb2312");%>
<div align="center">
<table border="1" width="100%" id="table1">
<tr>
<td>
<p align="center">学号</td>
<td>
<p align="center">姓名</td>
<td>
<p align="center">性别</td>
<td>
<p align="center">年龄</td>
<td>
<p align="center">籍贯</td>
<td>
<p align="center">院系</td>
<td>
<p align="center">修改</td>
<td>
<p align="center">删除</td>
</tr>
</table>

</div>
<%!
String url,sql;
Connection conn;
java.sql.Statement stmt;
ResultSet rs;
int i;
%>
<%
try{
Class.forName("com.mysql.jdbc.Driver");
conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/university?useEncoding=true&setEncoding=gb2312","root","147258");
stmt=conn.createStatement();
stmt.executeUpdate("use university");
rs=stmt.executeQuery("SELECT * FROM student;");
while(rs.next()){

rs.
%>
<div align="center">
<table border="1" width="100%" id="table1">
<tr>
<td>
<p align="center"><%=new String(((String)rs.getObject(1)).getBytes("iso-8859-1"),"gb2312")%></td>
<td>
<p align="center"><%=rs.getObject(2)%></td>
<td>
<p align="center"><%=rs.getObject(3)%></td>
<td>
<p align="center"><%=rs.getObject(4)%></td>
<td>
<p align="center"><%=rs.getObject(5)%></td>
<td>
<p align="center"><%=rs.getObject(6)%></td>
<td>
<p align="center">修改</td>
<td>
<p align="center">删除</td>
</tr>
</table>

</div>
<%
}
}catch(Exception e)
{

}

%>
<a href="insert.jsp" align="center">添加新纪录</a>

这是我在JSP里调用MYSQL的源文件.MYSQL设置成gb2312,但结果还是乱码!

等待达人!
...全文
279 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
gongyali2005 2007-06-20
  • 打赏
  • 举报
回复
如果是已经有数据的表呢.
Fantongking 2007-06-19
  • 打赏
  • 举报
回复
先检查下数据库的设置,是不是 GB2312
然后注意下 GB2312 的大小写
不行的话
把全部都设置为UTF-8
再不行的话就把 iso 转为 GB2312
public String getStr(String s){
String str=s;
try{
byte b[]=str.getBytes("ISO-8859-1");
str=new String(b);
return str;
}
catch(Exception e){return null;}
}
2000paladin 2007-06-19
  • 打赏
  • 举报
回复
把页面和数据库的编码都统一为UTF-8看看.
约翰羊 2007-06-19
  • 打赏
  • 举报
回复
mysql的数据库用gb2312
连接字符串用utf8
我一直这样用.
南瓜·先生 2007-06-19
  • 打赏
  • 举报
回复
a_nuo() ( ) 信誉:100 Blog 加为好友 2007-6-18 11:58:17 得分: 0



数据在输入的时候应该应该进行编码转换,输出的时候就不用转换了!




正解,数据插入数据库的时候选好编码,取出时不用动.
luyang1016 2007-06-18
  • 打赏
  • 举报
回复
jdbc:mysql://localhost:3306/university?useEncoding=true&setEncoding=gb2312"

貌似很对啊
Inhibitory 2007-06-18
  • 打赏
  • 举报
回复
MySQL好像用的是Unicode编码,要转换编码才行,我以前也遇到过,网上有很多方法解决的。
gongyali2005 2007-06-18
  • 打赏
  • 举报
回复
我在命令提示符下SELECT * FROM student;也没有问题!
还有.我的表里已经有数据了.我也是在提示符下插入的.难道不把数据库设置成UTF-8就搞不定了?我不信!继续等待达人!
a_nuo 2007-06-18
  • 打赏
  • 举报
回复
数据在输入的时候应该应该进行编码转换,输出的时候就不用转换了!
headwater 2007-06-18
  • 打赏
  • 举报
回复
你把mysql设置成utf-8看看,我是这么做的没乱码
这是一个胖子 2007-06-18
  • 打赏
  • 举报
回复
System.out.println(new String(testString.getBytes(”ISO-8859-1″),”gb2312″));
System.out.println(new String(testString.getBytes(”UTF8″),”gb2312″));
System.out.println(new String(testString.getBytes(”GB2312″),”gb2312″));
System.out.println(new String(testString.getBytes(”GBK”),”gb2312″));
System.out.println(new String(testString.getBytes(”BIG5″),”gb2312″));

你都穷举一下是什么编码?
gongyali2005 2007-06-18
  • 打赏
  • 举报
回复
用过ORACLE但是,我的机子跑起来太慢了.只能装MYSQL了.

谁有SQL语句的教程啊.给个地址.
ryuginka 2007-06-18
  • 打赏
  • 举报
回复
mysql确实存在很多问题,最好也只能以楼上的这种方式解决,
fengmingjie 2007-06-18
  • 打赏
  • 举报
回复
CREATE DATABASE yourdatabse DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
如果可以,重建一下数据库试试
已经博主授权,源码转载自 https://pan.quark.cn/s/e577710b7191 ### 解决Win10系统中Word文件图标显示不正常问题 #### 问题描述 在Windows 10操作系统中,部分用户遇到Word文档图标呈现非正常状态的问题。具体表现为:本应展示为Microsoft Word图标的DOC或DOCX文件,在系统中却呈现为常规的文本文件图标。这种现象不仅降低了用户的视觉体验,还可能引发一定的操作不便。 #### 解决方案 ##### 方法一:借助注册表编辑来纠正图标显示异常 1. **进行注册表备份**:为了保障系统的稳定性,在开展任何注册表修改之前,必须对注册表进行备份。可以通过“导出”功能来达成备份目的。 - 启动“运行”对话框(快捷键:`Windows + R`),键入`regedit`,随后按回车键进入注册表编辑界面。 - 在注册表编辑界面中,找到菜单栏里的“文件”选项,点击后选择“导出”,依照提示完成注册表备份。 2. **移除相关注册表项**: - 在`HKEY_CLASSES_ROOT`下,删除以下四个注册表项: - `.doc` - `.docx` - `Word.Document.8` - `Word.Document.12` - 在`HKEY_LOCAL_MACHINE\SOFTWARE\Classes`下,同样移除上述四个注册表项。 3. **重新启动计算机**:执行完上述步骤后,重新启动计算机以使修改生效。 #### 方法二:通过调整文件关联来纠正图标显示异常 如果第一种方法未能解决难题,则可以尝试调整文件的关联方式,具体步骤如下: 1. **移除文件关联**: - 在`HKEY_CLASSES_ROOT`下删除`....

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧