急!已经解决的oracle乱码又出现了??!!

juicely 2004-06-13 05:10:32
我做了很多oracle页面数据显示,只要加入
-----------------
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<%@ page contentType="text/html;charset=gb2312" %>
<% request.setCharacterEncoding("GB2312");%>
-----------------
就能正确读出显示、写入oracle数据库中文字符,但是现在!!!!

我在网上找了个从数据库中取记录,并分页显示的程序,但是分页倒是做到了,可是
取出的都是类似以下
---------
姓名 帐号 所属单位 权限 修改 删除
0x676C79 0x676C79 0xE69C9DE998B3E5B180 0xE7AEA1E79086E59198 修改 删除
0x6231 0x6231 0x647731 0xE699AEE9809A 修改 删除
第1页 共7页 下一页
-------
的乱码!!!

我也加入了-----------------
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<%@ page contentType="text/html;charset=gb2312" %>
<% request.setCharacterEncoding("GB2312");%>
-----------------这几句话。可是还是不行,我的源程序如下
,请大虾们指教指教,这到底是为什么???
orady.jsp---------------------------
<%@ page import = "java.sql.*" %>
<%@ page import = "com.test.DBManager" %> //数据库连接文件。
<%@ page contentType="text/html;charset=gb2312" %>
<% request.setCharacterEncoding("GB2312");%> //处理文字问题,但在这里起作用????
<%
//变量声明
java.sql.Connection sqlCon; //数据库连接对象
java.sql.Statement sqlStmt; //SQL语句对象
java.sql.ResultSet sqlRst; //结果集对象
java.lang.String strCon; //数据库连接字符串
java.lang.String strSQL; //SQL语句
int intPageSize; //一页显示的记录数
int intRowCount; //记录总数
int intPageCount; //总页数
int intPage; //待显示页码
java.lang.String strPage;
int i;
//设置一页显示的记录数
intPageSize = 10;
//取得待显示页码
strPage = request.getParameter("page");
if(strPage==null){//表明在QueryString中没有page这一个参数,此时显示第一页数据
intPage = 1;
}
else{//将字符串转换成整型
intPage = java.lang.Integer.parseInt(strPage);
if(intPage<1) intPage = 1;
}

//连接数据库
sqlCon = DBManager.getConnection();
//创建一个可以滚动的只读的SQL语句对象
sqlStmt = sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
//准备SQL语句
strSQL = "select xingming,zhanghao,"+"mima,suoshudanwei,id,quanxianbiaozhi from zhsd";
//执行SQL语句并获取结果集
sqlRst = sqlStmt.executeQuery(strSQL);
//获取记录总数
sqlRst.last();
intRowCount = sqlRst.getRow();
//记算总页数
intPageCount = (intRowCount+intPageSize-1) / intPageSize;
//调整待显示的页码
if(intPage>intPageCount) intPage = intPageCount;
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<title>JSP数据库操作例程 - 数据分页显示 - </title>
</head>
<body>
<table border="1" cellspacing="0" cellpadding="0">
<tr>
<td width="40"><center>姓名</center> </td>
<td width="45"><center>帐号</center></td>
<td width="60"><center>所属单位</center></td>
<td width="40"><center>权限</center></td>
<td width="30"><center>修改</center></td>
<td width="30"><center>删除</center></td>
</tr>
<%
if(intPageCount>0){
//将记录指针定位到待显示页的第一条记录上
sqlRst.absolute((intPage-1) * intPageSize + 1);
//显示数据
i = 0;
while(i<intPageSize && !sqlRst.isAfterLast()){
%>
<tr>
<td><center><%=sqlRst.getString("xingming")%></center></td>
<td><center><%=sqlRst.getString("zhanghao")%></center></td>
<td><center><%=sqlRst.getString("suoshudanwei")%></center></td>
<td><center><%=sqlRst.getString("quanxianbiaozhi")%></center></td>
<td><center><a href="zhxg.jsp?">修改</a></center></td>
<td><center><a href="zhsc.jsp?">删除</a></center></td>
</tr>
<%
sqlRst.next();
i++;
}
}
%>
</table>
第<%=intPage%>页 共<%=intPageCount%>页 <%if(intPage<intPageCount){%><a href="orafy.jsp?page=<%=intPage+1%>">下一页</a><%}%> <%if(intPage>1){%><a href="orafy.jsp?page=<%=intPage-1%>">上一页</a><%}%>
</body>
</html>
<%
//关闭结果集
sqlRst.close();
//关闭SQL语句对象
sqlStmt.close();
//关闭数据库
sqlCon.close();
%>
--------------------------

请问是为什么阿??我真是想不通!!小妹感谢指教!!!
...全文
220 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
juicely 2004-06-15
  • 打赏
  • 举报
回复
问题已解决,我用的是tomcat,将sqlStmt = sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
中的TYPE_SCROLL_INSENSITIVE,改成TYPE_SCROLL_SENSITIVE,就行了!!
metempsychosis 2004-06-13
  • 打赏
  • 举报
回复
你所使用的是什么应用服务器???
juicely 2004-06-13
  • 打赏
  • 举报
回复
请问有人知道吗?帮帮忙吧!

81,094

社区成员

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

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