查询过程写在jsp中时,能正确显示中文,而写到javabean,然后调用时,却不能正确显示中文了

zsbs 2005-07-27 07:06:34
<%@ page contentType="text/html;charset=GB2312" %>

<%.............
//查询过程写在jsp中时,能正确显示中文,而写到javabean,然后调用时,却不能正确显示中文了
Class.forName("oracle.jdbc.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:odbase";
Connection conn= DriverManager.getConnection(url,user,pasd);
Statement stmt=conn.createStatement();
String sqlStr="";
sqlStr = "SELECT CZRY_MC FROM XJG_YH WHERE YH_DM='00036'";
ResultSet rs=stmt.executeQuery(sqlStr);
rs.next();
out.print(new String((rs.getString(1)).getBytes("ISO8859-1"),"GB2312")+"<br>");

............
%>

数据库为oracle,服务器是resin
我将上述代码写在jsp文件中,能够正确显示中文查询结果:"许建国"
但将上述的查询过程写到javabean中,然后调用javabean中的函数时,却不能正确显示中文了,显示结果为:"Pm=(9z"

这些查询代码以前在sybase数据库中都能正常运行,现在由于公司数据库改为oracle了,却出了这个问题,怎么办呀?救救我!
...全文
132 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zsbs 2005-08-03
  • 打赏
  • 举报
回复
救救呀,我真是见鬼了

我在getBytes(  );
或者<%@ page contentType="text/html;charset=  " %>

用了各种编码方式,总是不行,而且那个乱码始终是原来的乱码,不会因我的编码改变而改变
而且那乱码也不是一般的"?"号或者其他无法识别的符号,而都是一些字符组成.
真怪呀,求救了
cool0036 2005-08-03
  • 打赏
  • 举报
回复
还有一个方法就是写一过滤器,每次页面运行时都会调用它,你首先在web.xml中配置gb2132信息,如:
<filter>
<filter-name>filterall</filter-name>
<filter-class>comm.filter.FilterAll</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>GB2312</param-value>
</init-param>
</filter>
然后在过滤器中init方法里面取这个值,如:
public void init(FilterConfig filterConfig) throws ServletException {
this.filterConfig = filterConfig;
this.encoding = filterConfig.getInitParameter("encoding"); //取出参数值
}
在dofilter中给字符中文过滤
//进行中文处理
if (encoding != null)
request.setCharacterEncoding(encoding); //转成中文
chain.doFilter(request, response); //响应
那么每个页面都可以事先进行过滤。
cool0036 2005-08-03
  • 打赏
  • 举报
回复
写一个转中文的方法(和getBytes基本一样),你在存入bean之前就调用这个方法。例如:change.getStr_gb(VAOModel.GetList(i).toString()),不需要再次在页面显示时调用它了。注:假设change.getStr_gb为转换中文方法
zsbs 2005-08-03
  • 打赏
  • 举报
回复
还是解决不了,请大家帮帮呀
zsbs 2005-07-30
  • 打赏
  • 举报
回复
oracle的字符集设置不允许改变,能不能在jsp或javabean中改变呢?
竹君子 2005-07-27
  • 打赏
  • 举报
回复
应该是oracle数据库字符集的问题吧。

81,092

社区成员

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

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