public boolean checkUser(String user,String pwd) { boolean flag = false; try{ ct = new ConnDB().getConn(); sm = ct.createStatement(); rs = sm.executeQuery("select password from users where username='"+user+"'"); if(rs.next()){ if(rs.getString(1).equals(pwd)){ flag = true; } } }catch(Exception e){ e.printStackTrace(); }finally{ close(); } System.out.println(flag); return flag; }
public List getUserByPage(int pageNow){ List list = new ArrayList(); try { ct = new ConnDB().getConn(); sm = ct.createStatement(); rs = sm.executeQuery("select top "+pageSize+" * from users where " + "userid not in (select top "+(pageSize*(pageNow-1)) +" userid from users) "); while(rs.next()){
其实翻页根本就用不到"正则",正则表达式一般是用于检索字符串的,你翻页不需要搞的这么复杂啊
例如:
< href="abc.jsp?page=<%=above-1">上一页</a> <a href="abc.jsp?page=<%=next+1">下一页</a>
这样就可以进行简单的翻页了啊
<%
int pagenow =1;//当前页
String s_pagenow=request.getParameter("pagenow");
if(s_pagenow!=null)
{ pagenow=Integer.parseInt(s_pagenow);}
int pagecount=10;//总页数根据情况求得
//上一页
if(pagenow!=1){
out.println("<a href=c.jsp?pagenow="+(pagenow-1)+">上一页</a>");
}
//显示超链接
for(int i=1;i<=pagecount;i++){
out.println("<a href=c.jsp?pagenow="+i+">["+i+"]</a>");
}
//下一页
if(pagenow!=pagecount){
out.println("<a href=c.jsp?pagenow="+(pagenow+1)+">下一页</a>");
}
%>
<body bgcolor="pink">
登录成功!<%=request.getParameter("username") %><br>
<a href="login.jsp">返回登录界面</a>
<hr>
<h1>用户信息列表</h1>
<%
int pageNow=1;//默认显示第一页
String s_pageNow = request.getParameter("pageNow");
if(s_pageNow != null){
pageNow = Integer.parseInt(s_pageNow);
}
//UserCl uc = new UserCl();
//List list = uc.getUserByPage(pageNow);
List list = (List)request.getAttribute("result");
%>
<table border=1>
<tr><td>用户ID</td><td>用户名</td><td>密码</td><td>电子邮箱</td><td>权限级别</td></tr>
<% for(int i = 0;i<list.size();i++){
UserBean ub = (UserBean)list.get(i);
%>
<tr><td><%=ub.getUserid() %></td><td><%=ub.getUsername() %></td>
<td><%=ub.getPassword() %></td><td><%=ub.getEmail() %></td>
<td><%=ub.getGrade() %></td></tr>
<%} %>
</table>
<%
if(pageNow>1){
out.println("<a href=UserServlet?pageNow="+(pageNow-1)+">[上一页]</a>");
}
//int pageCount = uc.getPageCount();
int pageCount =(Integer) request.getAttribute("pageCount");
for(int i =1;i<=pageCount;i++){
out.println("<a href=UserServlet?pageNow="+i+">["+i+"]</a>");
}
if(pageNow<pageCount){
out.println("<a href=UserServlet?pageNow="+(pageNow+1)+">[下一页]</a>");
}
%>
</body>
package com.simaa.model;import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;public class UserCl {
private Statement sm = null;
private ResultSet rs = null;
private Connection ct = null;
private int pageSize = 3;
private int rowCount = 0;
private int pageCount = 0;
public void close(){
try {
if(rs != null){ rs.close(); rs = null;}
if(sm != null){ sm.close(); sm = null;}
if(ct != null){ ct.close(); ct = null;}
} catch (SQLException e) {
e.printStackTrace();
}
}
public boolean checkUser(String user,String pwd) {
boolean flag = false;
try{
ct = new ConnDB().getConn();
sm = ct.createStatement();
rs = sm.executeQuery("select password from users where username='"+user+"'");
if(rs.next()){
if(rs.getString(1).equals(pwd)){
flag = true;
}
}
}catch(Exception e){
e.printStackTrace();
}finally{
close();
}
System.out.println(flag);
return flag;
}
public List getUserByPage(int pageNow){
List list = new ArrayList();
try {
ct = new ConnDB().getConn();
sm = ct.createStatement();
rs = sm.executeQuery("select top "+pageSize+" * from users where " +
"userid not in (select top "+(pageSize*(pageNow-1)) +" userid from users) ");
while(rs.next()){
System.out.println(rs+"---------------");
UserBean ub = new UserBean();
ub.setUserid(rs.getInt(1));
ub.setUsername(rs.getString(2));
ub.setPassword(rs.getString(3));
ub.setEmail(rs.getString(4));
ub.setGrade(rs.getInt(5));
list.add(ub);
}
} catch (Exception e) {
e.printStackTrace();
}finally{
close();
}
return list;
}
public int getPageCount(){
try{
ct = new ConnDB().getConn();
sm = ct.createStatement();
rs = sm.executeQuery("select count(*) from users ");
if(rs.next()){
rowCount = rs.getInt(1);
}
pageCount = (rowCount+pageSize-1)/pageSize;
}catch(Exception e){
e.printStackTrace();
}finally{
close();
}
return pageCount;
}
}
共${entity.count }条数据
当前在第${entity.pageNum }页
分${entity.pageAll }页显示
<%
if(entity.getPageNum()==1||entity.getPageNum()==0){
%>
首页
上一页
<%} else{%>
<A href="xx.jsp??page=1">首页</A >
<a href="xx.jsp?page=${entity.pageNum-1 }">上一页</a><%}
if(entity.getPageNum()==entity.getPageAll()){
%> 下一页 未页 <%}else{ %>
<a href="xx.jsp??page=${entity.pageNum+1 }">下一页</a>
<a href="xx.jsp??page=${entity.pageAll }">未页 </a>
<%} %>
<input type="text" name=page id= page style="width: 30px;" onkeyup="carCount (this)" />
<input type="submit" class=button value=go style="height: 20px;" />
</form> 看看吧!这是我用的分页,在后台接收一下page的值不就可以了吗?当然也要写sql的哦!