你在jsp上加上这句话了吗?
      <%@ page contentType="text/html;charset=gb2312" %>

解决方案 »

  1.   

    <%@ page contentType="text/html;charset=gb2312" %>
    加在jsp文件的最上方
     
      

  2.   

    还有一种可能是你的数据库的字符集不是unicode, 你检查一下。如果数据库的字符集没有问题,在servlet中你用    
    response.setContentType("text/html; charset=GBK")试一下。
      

  3.   

    对了。我昨天仔细检查发现了一个很奇怪的问题。有两个jsp文件,其中一个jsp文件是查询数据库中的表A,另一个jsp文件是查询数据表B,两个文件的程序大致相同。但是其中一个可以正确显示中文;另一个却不能正确显示中文,显示的是ASCII码。
    这是怎么回事呀???我都快被气晕了
      

  4.   

    既然可以取出正确的数据,说明不是数据库的原因。你把jsp贴出来看看
      

  5.   

    实在不行,你在你的JSP文件数据库查询前,加上一句:
    alter session set
      

  6.   

    alter session set nls_language='SIMPLIFIED CHINESE';
      

  7.   

    我发现了主要原因,但是不知道该怎么改。
    主要原因是:
    游标只能单向移动:PreparedStatement pstm = con.prepareStatement(strSQL);
    游标可以双向移动:PreparedStatement pstm = con.prepareStatement(strSQL,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);我使用了游标双向移动,我使用游标双向移动目的是为了使用:
    rs.last() ;
    intTotal=rs.getRow() ;就是取结果集的总数我都不知道怎么改才好。因为程序不是我写的,而写程序的人又不在。我现在接手他的工作
    因为要进行分页,所以必须要取结果集的记录总数