定义一个公用文件 inc.jsp,里面存放ser的值
然后每次都从这个文件中取值

解决方案 »

  1.   

    你看一下JSP文件编译后的html文本,看看相应的地方是否有ser=相应的值
      

  2.   

    <%@ page contentType="text/html; charset=GBK" import= "java.sql.*" %> 
    <%@ include file="head.htm" %>
    <%!
    public String getStr(String str)
    {
    try
    {
    String temp_p=str;
    byte[] temp_t=temp_p.getBytes("ISO8859-1");
    String temp=new String(temp_t);
    return temp;
    }
    catch(Exception e)
    { }
    return "null";
    }%>
    <%!
    public static String returnToBr(String sStr) {
    if (sStr == null || sStr.equals("")) {
    return sStr;
    }StringBuffer sTmp = new StringBuffer();
    int i = 0;while (i <= sStr.length()-1) {
    if (sStr.charAt(i) == '\n'||sStr.charAt(i)=='\r') {
    sTmp = sTmp.append("<br>");
    } else if (sStr.charAt(i) == ' ') {
    sTmp = sTmp.append("&nbsp;");
    }else {
    sTmp = sTmp.append(sStr.substring(i,i+1));
    }i++;
    }
    String S1;
    S1=sTmp.toString();
    return S1;
    }%>
    <%!
    public static String returnToHTML(String sStr) {
    if (sStr == null || sStr.equals("")) {
    return sStr;
    }StringBuffer sTmp1 = new StringBuffer();
    int i = 0;while (i <= sStr.length()-1) {if (sStr.charAt(i) == '<') {
    sTmp1 = sTmp1.append("&lt;");
    } else if (sStr.charAt(i) == '>') {
    sTmp1 = sTmp1.append("&gt;");
    }else
     {
    sTmp1 = sTmp1.append(sStr.substring(i,i+1));
    }i++;
    }
    String S2;
    S2=sTmp1.toString();
    return S2;
    }%>
    <%
    String ser = request.getParameter("ser");//
    String s = ser;
    String  search = (String) session.getValue("search"); 
    out.print(s);
    %>
    <% 
    //变量声明 
    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; 
    String kind_name;
    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; 
    } //装载JDBC驱动程序 
    String DBDriver="sun.jdbc.odbc.JdbcOdbcDriver";
    Class.forName(DBDriver);
    String ConnStr="jdbc:odbc:hh";
    String MyUser="danny";
    String MyPassword="zw";
    Connection Con = null;
    Con = DriverManager.getConnection(ConnStr,MyUser,MyPassword);//java.sql.DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); 
    //Class.forName("oracle.jdbc.driver.OracleDriver");
    //设置数据库连接字符串 
    //新注释strCon = "jdbc:oracle:thin:@192.168.12.30:1521:oral"; //连接数据库 
    //sqlCon = java.sql.DriverManager.getConnection(strCon,"danny","zw"); 
     //新注释String driverName = "oracle.jdbc.driver.OracleDriver";
     //新注释Class.forName(driverName).newInstance();//strCon =  java.sql.DriverManager.getConnection(strCon,"danny","zw"); 
    //新注释Connection Con=  java.sql.DriverManager.getConnection(strCon,"danny","zw");//创建一个可以滚动的只读的SQL语句对象 :sqlcon = con
    sqlStmt = Con.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY); //准备SQL语句 
    //strSQL = "select product_kind ,product_kind_name from ut_product_kind ORDER BY product_kind ASC  ;"; 
    strSQL = "SELECT SERIAL_ID, USER_ID,   PRODUCT_NAME,   PRODUCT_KIND,   ISSUE_DATE,   PRODUCT_ORA_AREA,   PRODUCT_MODEL,   PRODUCT_PRICE,   PRODUCT_UNITS,   PRODUCT_PICTURE,    PRODUCT_PICTURE1,    PRODUCT_DESCRIBE  FROM UT_NET_PRODUCT  where PRODUCT_NAME like '"+s+"'";
    //out.print(strSQL);
    //执行SQL语句并获取结果集 
    sqlRst = sqlStmt.executeQuery(strSQL); //获取记录总数 
    sqlRst.last(); 
    intRowCount = sqlRst.getRow(); //记算总页数 
    intPageCount = (intRowCount+intPageSize-1) / intPageSize; //调整待显示的页码 
    if(intPage>intPageCount) intPage = intPageCount; 
    %> <html> 
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>产品分页显示 Oracle</title>
    <link href="SITE.CSS" rel="stylesheet" type="text/css">
    <style type="text/css">
    <!--
    a {
    text-decoration: underline;
    }
    -->
    </style>
    </head> <body>
     <table width="100%" border="1" cellpadding="0" cellspacing="0">
      <tr>
        <td width="204" valign="top" bgcolor="#CCCCCC"> 
          <%@ include file="lx.htm" %>
        </td> 
        <td width="822" align="center" valign="top" bgcolor="#669999" class="bb">
    <table width="842" height="41" border="1" align="left" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF">
            <tr bgcolor="#FF7300"> 
              <th width="89" height="19">Product Logo</th>
              <th width="191" >Product Name</th>
              <th width="149">Product Area</th>
              <th width="149">Product Model</th>
              <th width="149">Product Units</th>
              <th width="101">Manager</th>
            </tr>
            <%!
    String USER_ID,   PRODUCT_NAME;
    %>
            <%
    String bgcolor1="";
    if(intPageCount>0){ 
    //将记录指针定位到待显示页的第一条记录上 
    sqlRst.absolute((intPage-1) * intPageSize + 1); //显示数据 
    i = 0; 
    while(i<intPageSize && !sqlRst.isAfterLast()){ 
                         
                         PRODUCT_NAME=sqlRst.getString("PRODUCT_NAME");
                         if( i % 2 == 1 ){                       bgcolor1= "#00CCCC";
                           }else
                           {
                           bgcolor1 = "#FFFFFF";
                           }
    %>
            <tr bgcolor="#EDF0E6"> 
              <td> 
                <%String PRODUCT_PICTURE12=sqlRst.getString("PRODUCT_PICTURE");%>
                <%=PRODUCT_PICTURE12%> 
                <div align="center"></div></td>
              <% kind_name=sqlRst.getString("PRODUCT_NAME");%>
              <td><%=kind_name%> 
                <div align="center"></div></td>
              <td> 
                <%String PRODUCT_ORA_AREA=sqlRst.getString("PRODUCT_ORA_AREA");%>
                <%=PRODUCT_ORA_AREA%> 
                <div align="center"></div></td>
              <td><%=sqlRst.getString("PRODUCT_MODEL")%> 
                <div align="center"></div>
                <div align="center"></div></td>
              <td><%=sqlRst.getString("PRODUCT_UNITS")%> 
                <div align="center"></div></td>
              <td bgcolor="#EDF0E6"> 
                <div align="center"><a href="product_manager1.jsp?PRODUCT_NAME=<%=PRODUCT_NAME%>"><font color="#000000">MANAGER</font></a></div></td>
            </tr>
            <% 
                          
                         
    sqlRst.next(); 
    i++; 


    %>
          </table>
        </td>
    </tr>
    </table>
    <table width="100%" height="21" border="0" cellpadding="0" cellspacing="0">
      <tr> 
        
      <td align="center" valign="middle" background="images/daohangtiao-bj.jpg" class="bb"> 
        <a href="searchpage.jsp?page=1&ser=<%=s%>">First Page</a> 
        <%if(intPage<intPageCount){%>
        <a href="searchpage.jsp?page=<%=intPage+1%>&ser=<%=s%>">Next Page</a> 
        <%}%>
        <%if(intPage>1){%>
        <a href="searchpage.jsp?page=<%=intPage-1%>&ser=<%=s%>">Front Page</a> 
        <%}%>
        <a href="searchpage.jsp?page=<%=intPageCount%>&ser=<%=s%>">Last Page</a> Page<%=intPage%>/<%=intPageCount%> 
        <a href="searchpage.jsp?page=1&ser=1">haha/a>
    </td>
    </tr> 
    </table>
    </body> 
    </html>
    <% 
    //关闭结果集 sqlRst.close(); //关闭SQL语句对象 
    sqlStmt.close(); //关闭数据库 
    Con.close(); 
    %>
      

  3.   

    又晕了!我可看不了了,从学struts看这样的JSP文件就晕!谁能帮帮他吧!呵呵象当初我页这么写!
      

  4.   

    这是我的代码,一切正常
    <%@ page contentType="text/html; charset=GBK" import= "java.sql.*" %> <%
    String ser = request.getParameter("ser");//
    String s = ser;
    out.print(s);
    String strpage=request.getParameter("page");
    int intPage=1;
    int intPageCount=10;
    try{
    intPage=java.lang.Integer.parseInt(strpage);
    }catch(Exception e){}
    out.print(intPage);
    %>
    <table width="100%" height="21" border="0" cellpadding="0" cellspacing="0">
      <tr> 
        
      <td align="center" valign="middle" background="images/daohangtiao-bj.jpg" class="bb"> 
        <a href="searchpage.jsp?page=1&ser=<%=s%>">First Page</a> 
        <%if(intPage<intPageCount){%>
        <a href="searchpage.jsp?page=<%=intPage+1%>&ser=<%=s%>">Next Page</a> 
        <%}%>
        <%if(intPage>1){%>
        <a href="searchpage.jsp?page=<%=intPage-1%>&ser=<%=s%>">Front Page</a> 
        <%}%>
        <a href="searchpage.jsp?page=<%=intPageCount%>&ser=<%=s%>">Last Page</a> Page<%=intPage%>/<%=intPageCount%> 
        <a href="searchpage.jsp?page=1&ser=1">haha/a>
    </td>
    </tr> 
    </table>
      

  5.   

    谢谢楼上的回答!String ser = request.getParameter("ser");//这个SER首先是从一个搜索条件页传过来的。
    <form name="form1" method="post" action="searchpage.jsp">
                            <table width="100%" border="0" cellspacing=" 0" cellpadding="0">
                              <tr> 
                                <td width="51%" valign="middle" class="bb">    </td>
                                <td width="33%" valign="middle" class="bb">Search   
                                  <input name="ser" type="text" size="15" id="ser"></td>
                                <td width="16%" valign="middle"><input name="imageField2" type="image" src="images/biao-go.gif" width="22" height="21" border="0"></td>
                              </tr>
                            </table>
                          </form>//第一次传过来,没有问题//SER正常
    //然后再进行翻页,SER就变成NULL了!
      

  6.   

    自己写个Class Page(String StrSql,int start,int count )
    start:从第几条显示
    count:没也显示几条
    StrSql:你的查询条件关键用rs.absolute定位
      

  7.   

    用javascript实现吧,String ser = request.getParameter("ser");把ser变量值保存到本地
    隐藏域里,然后再去那个本地域值。
    <script language="javascript">
     function getser(){
       var serval=document.ser.value
       return serval
     }
    </script>
    <INPUT TYPE="hidden" NAME="ser" value=<%=ser%>>
    <a href="searchpage.jsp?page=<%=intPage+1%>&ser=getser()">Next Page</a> 
    基本方法这样,有段时间没用js了,你再看看