调用bean代码:
<jsp:useBean id="display" scope="page" class="brick.messageList"/>
<%
//设置页码,并显示
display.setPage(pag);
display.Display(response);
%>
########
messageList.java://显示留言页面的类,增加分页功能
package brick;
import java.sql.*;import java.io.*;
import javax.servlet.http.*;
import javax.servlet.*;public class messageList
{
int page;
int count;
String driver="sun.jdbc.odbc.JdbcOdbcDriver";

public void setPage(int page)
{
try
{
Class.forName(driver);
}
catch(ClassNotFoundException e)
{
System.out.println("Error!驱动没找到");
}
this.page=page;
}
public void Display(HttpServletResponse response)
{
try
{
response.setContentType("text/html;GBK");
PrintWriter out=response.getWriter();
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn=DriverManager.getConnection("jdbc:odbc:liuyan","ams","ams");
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery("select count(*) from messagebook");
rs.next();
this.count=rs.getInt(1);

//以下选择开始游标
int first=count-(page-1)*10;
int last=count-page*10;
//结束

PreparedStatement pstmt=conn.prepareStatement("select * from messagebook where uid>=? and uid<=? group by uid");
pstmt.setInt(1,last);
pstmt.setInt(2,first);
rs=pstmt.executeQuery();
rs.afterLast();
while(rs.previous())

{
out.print("留言人:");
out.print("<font color=red>" + rs.getString("name") + "</font>");
out.print("<br>");
out.print("电子邮件");
out.print("<a href=mailto:");
out.print(rs.getString("email"));
out.print(">");
out.print(rs.getString("email"));
out.print("</a>");
out.print("<br>来自:" + rs.getString("ip") + "留言于" + rs.getString("exactpost"));
out.print("<br>");
out.print("<font color=#660000> 他说:</font><br><table><tr><th></th></tr><td bgcolor=#CCFFFF>");
out.print(rs.getString("content"));
out.print("</td></table>");
out.print("<table border width=760 height=10><tr><th bgcolor=#660000></th></tr></table>");

}
rs.close();
}
catch(Exception e)
{
System.out.print(e.toString());
}
}
public boolean hasNext()
{
if (count>page*10) return true;
else return false;
}
}

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【brick_01】截止到2008-07-22 23:37:11的历史汇总数据(不包括此帖):
    发帖的总数量:28                       发帖的总分数:600                      每贴平均分数:21                       
    回帖的总数量:12                       得分贴总数量:0                        回帖的得分率:0%                       
    结贴的总数量:7                        结贴的总分数:200                      
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:21                       未结的总分数:400                      
    结贴的百分比:25.00 %               结分的百分比:33.33 %                  
    无满意结贴率:0.00  %               无满意结分率:0.00  %                  
    楼主该结一些帖子了
      

  2.   

    你在Display方法 中传jsp中的out对象 试试
      

  3.   

    请问这样的bean能直接输出到JSP中显示吗》?
      

  4.   

    你需要把这个BEAN独立写在一个JAVA文件中,编译后放入相应的文件夹中才能使用。这么直接写可能不行吧,JAVABEAN也是有规范的。<jsp:useBean id="display" scope="page" class="brick.messageList"/> 然后你在页面中嵌入这句话就可以调用了。调用格式为:display.方法名();
      

  5.   

    response.setContentType("text/html;GBK"); 这里在GBK前不用加charset=吗?