下面时我我再dao中写的实现类,我想在点击查询时能做到分页效果,有上一页,下一页,首页,末尾页,通过页数来选择,
请高手指点下吧,觉得分页挺有难度的,我知道主要是操作tablemodel , 但我真的不知道怎么下手,请高手高台贵手吧。package lzz.com.myqq.server.dao.impl;import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Vector;import lzz.com.myqq.server.dao.db.DBPub;
import lzz.com.myqq.server.dao.inf.UserDAO;
import lzz.com.myqq.server.dao.vo.User;public class UserDAOImpl implements UserDAO { // --SID SNAME SPWD SSEX NAGE SADDRESS NONLINE DREGDATE
public Vector<Vector<String>> findAll(String sid, String sname, int nonline) {// 查看所有数据
// 
Vector<Vector<String>> allv = new Vector<Vector<String>>();
//
StringBuilder sql = new StringBuilder();
sql
.append("select sid,sname,spwd,ssex,nage,nvl ( saddress , '未填写') as saddress , decode(nonline,'0','不在线' ) as nonline , to_char(dregdate,'yyyy-mm-dd') as dregdate");
sql.append(" from t_user");
sql.append(" where 1=1"); if (sid != null && sid.length() > 0) {
sql.append(" and sid='" + sid + "'");
}
if (sname != null && sname.length() > 0) {
sql.append(" and sname like '%" + sname + "%'");
}
if (nonline != -1) {
sql.append(" and nonline=" + nonline);
}
sql.append(" order by sid asc"); // 3 操作数据库
Connection con = null;
Statement stmt = null;
ResultSet rs = null; try {
con = DBPub.getcon();
stmt = con.createStatement();
rs = stmt.executeQuery(sql.toString());

while (rs.next()) {
Vector<String> lineV = new Vector<String>(); lineV.add(rs.getString("SID"));// SID
lineV.add(rs.getString("SNAME"));// SNAME
lineV.add(rs.getString("SPWD"));// SPWD
lineV.add(rs.getString("SSEX"));// SSEX
lineV.add(rs.getString("NAGE"));// NAGE
lineV.add(rs.getString("SADDRESS"));// SADDRESS
lineV.add(rs.getString("NONLINE"));// NONLINE
lineV.add(rs.getString("DREGDATE"));// DREGDATE allv.add(lineV);

} } catch (Exception e) {
e.printStackTrace();
} finally {
DBPub.closeAll(con, stmt, rs);
}
return allv;
}
}