JSP MVC模式(JSP + JavaBean +Servlet)实现分页的源代码

benben_wunai 2010-01-02 10:29:51
能够贴出来的更好,谢了
...全文
22056 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaohou_2007 2011-05-08
  • 打赏
  • 举报
回复
为什么喜欢直接贴原码?
我觉得还是把主要是思想说明白即可。可以稍微附带些代码~~
michaellin20301 2010-01-02
  • 打赏
  • 举报
回复
<%@ page language="java" contentType="text/html; charset=gbk"
pageEncoding="gbk" import="java.sql.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%
String ipage=request.getParameter("page");
int pageSize=6;
int totalPage=0;
String url="jdbc:odbc:stu";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn=DriverManager.getConnection(url);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
ResultSet rs1=stmt.executeQuery("select count(*) from student");
int lc=0;
if(rs1.next()){
lc=rs1.getInt(1);
}
rs1.close();
if(lc%pageSize==0){
totalPage=lc/pageSize;
}else{
totalPage=lc/pageSize+1;
}
ResultSet rs = stmt.executeQuery("select * from student order by number");
if(ipage!=null){
int l=(Integer.parseInt(ipage)-1)*pageSize;
if(l!=0)rs.absolute(l);
}else{
ipage="1";
}
int i=0;
while(rs.next()){
String num=rs.getString("number");
out.println(num+"<br>");
i++;
if(i==pageSize)break;
}
rs.close();
stmt.close();
conn.close();
%>
<br>
您当前访问的是第<%=ipage %>页 总共有<%=totalPage %>页 总共有<%=lc %>条
<br>
<a href="dbv1.jsp?page=1">第一页</a> 
<%
if(ipage.equals("1")){
}else{
%>
<a href="dbv1.jsp?page=<%=Integer.parseInt(ipage)-1%>">上一页</a> 
<%
}
%>
<%
if(ipage.equals(String.valueOf(totalPage))){
}else{
%>
<a href="dbv1.jsp?page=<%=Integer.parseInt(ipage)+1%>">下一页</a>
<%
}
%>
<a href="dbv1.jsp?page=<%=totalPage%>">最后一页</a>
<br>
<select onChange="fun1(this.value)">
<%
for(int j=1;j<=totalPage;j++){
%>
<option value=<%=j %>
<%if(ipage.equals(String.valueOf(j)))
{ out.println("selected"); }
%>><%=j %></option>
<%
}
%>
</select>
<script type="text/javascript">
function fun1(n){
window.location.href="dbv1.jsp?page="+n;
}
</script>





</body>
</html>
hyowner 2010-01-02
  • 打赏
  • 举报
回复
model:你封装你的类就是了
把上面的JSP里的分页代码写到你的servlet里 然后再在JSP中做些相应的处理就可以了
benben_wunai 2010-01-02
  • 打赏
  • 举报
回复
JSP+Servlet+javabean实现分页,急需,谢了,有源代码的给贴出来
benben_wunai 2010-01-02
  • 打赏
  • 举报
回复
MVC实现的,JSP+Servlet+javabean
huangqibing0626 2010-01-02
  • 打赏
  • 举报
回复
		<% Class.forName("com.mysql.jdbc.Driver").newInstance();
String url="jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=gb2312";
String username="root";
String password="19870626";
Connection conn=DriverManager.getConnection(url,username,password);
int intPageSize;//一页显示的记录数
int intRowCount;//记录总数
int intPageCount;//总页数
int intPage;//待显示的页码
String strPage;
int i;
intPageSize=6;
strPage=request.getParameter("page");
if(strPage==null){
intPage=1;
}
else{
intPage=Integer.parseInt(strPage);
if(intPage<1)intPage=1;
}
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from book";
ResultSet rs=stmt.executeQuery(sql);
rs.last();
intRowCount=rs.getRow();
intPageCount=(intRowCount+intPageSize-1)/intPageSize;//就是总页数
if(intPage>intPageCount){
intPage=intPageCount;
}
if(intPageCount>0){
rs.absolute((intPage-1)*intPageSize+1);//将记录指针定位到待显示页的第一条记录
i=0;
while(i<intPageSize&&!rs.isAfterLast()){%>
<tr>
<td><%=rs.getString("book_id") %></td>
<td><%=rs.getString("book_name") %></td>
<td><%=rs.getString("book_author") %></td>
<td><%=rs.getString("book_source") %></td>
<td><%=rs.getString("book_date") %></td>
<td><%=rs.getString("book_price") %></td>
<td><a href="update.jsp">修改</a>   <a href="delete.jsp">删除</a></td>
</tr>
<% rs.next();
i++;
}
}
%>
</table>
<hr color="#999999">
<div align="center">第<%=intPage %>页 共<%=intPageCount %>页
<%if(intPage<intPageCount){ %>
<a href="book_mes.jsp?page=<%=intPage+1 %>">下一页</a>
<%} %>
<%if(intPage>1){ %>
<a href="book_mes.jsp?page<%=intPage-1 %>">上一页</a>
<%} %>
<%
rs.close();
stmt.close();
conn.close();
%>
SambaGao 2010-01-02
  • 打赏
  • 举报
回复
<%@ page language="java" contentType="text/html; charset=GB18030"
import="java.util.*" pageEncoding="GB18030"%>
<%@ page import="com.xlh.userDao.*" %>
<%@ page import="com.xlh.model.*" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=">
<link href="style/oa.css" rel="stylesheet" type="text/css">
<script language="javascript" src="script/public.js"></script>
<title>查看工会会员管理员</title>
<style type="text/css">
<!--
a:link {
text-decoration: none;
}

a:visited {
text-decoration: none;
color: #FF0000;
}

a:hover {
text-decoration: underline;
color: #0000FF;
}

a:active {
text-decoration: none;
color: #00FF00;
}
-->
</style>
<%
//有几条消息
// InfoDaoImpl _info = new InfoDaoImpl() ;
//int _n = _info.getInfo() ;
// if (_n > 0) {
%>

<script type="text/javascript">

function delAdmin(admin_id,pagesize) {
//alert('a') ;
window.open('adminDel.do?adminId='+admin_id+'&pageSize='+pagesize) ;
}
function editAdmin(id,md,name,password,pagesize) {
//alert('a') ;
// alert(id) ;
openWin('edit_admin.jsp?id='+id+'&md='+md+'&username='+name+'&password='+password+'&pageSize='+pagesize,'addbook',600,300);
}
</script>
</head>
<BODY bgColor=#dee7ff leftMargin=0 background="" topMargin=0
marginheight="0" marginwidth="0">
<center>
<TABLE width="778" border=0 cellPadding=0 cellSpacing=0
borderColor=#ffffff bgColor=#dee7ff style="FONT-SIZE: 10pt">
<TBODY>
<TR height=35>
<TD align=middle width=20 background=images/title_left.gif
bgColor=#dee7ff></TD>
<TD align=middle width=120 background=images/title_left.gif
bgColor=#dee7ff>
<FONT color=#f7f7f7>查看防陨管理员<font color="#FFFFFF"> </font>
</FONT>
</TD>
<TD align=middle width=11 background=images/title_middle.gif
bgColor=#dee7ff>
<FONT color=#f7f7f7> </FONT>
</TD>
<TD align=middle background=images/title_right.gif bgColor=#dee7ff>
<FONT color=#f7f7f7> </FONT>
</TD>
</TR>
</TBODY>
</TABLE>
<TABLE width="778" border=0 align=center cellPadding=0 cellSpacing=0
borderColor=#ffffff style="FONT-SIZE: 10pt">
<TBODY>
<TR>
<TD width="82%" height=14 align=right vAlign=center noWrap>
 
</TD>

<TD width="28%" align=center vAlign=center noWrap>

<select name="check_Number">
<option selected value="0">
请选择查询
</option>
<option value="1">
姓名
</option>
</select>
<input type="text" name="check_Name" size="13" onkeydown="check1()">
<input type="button" value="查询" onClick="check()">
<a href="#" onClick="openWin('add_admin.jsp','addbook',600,300);">新增</a>
</TD>
<TD width="18%" align=right vAlign=center noWrap>

</TD>

</TR>

<TR>
<TD height=28 colspan="2" align=right vAlign=center noWrap
background=images/list_middle.jpg>
  
<!-- 可以在这里插入分页导航条 -->
</TD>
</TR>
</TBODY>
</TABLE>
<table width="778" border="0" cellPadding="0" cellSpacing="1"
bgcolor="#6386d6">
<!-- 列表标题栏 -->

<tr bgcolor="#EFF3F7" class="TableBody1">

<td width="10%" height="37" align="center">
<B>用户名</B>
</td>
<td width="18%" height="37" align="center">
<b>门店</b>
</td>
<td width="18%" height="37" align="center">
<b>部门</b>
</td>
<td width="18%" height="37" align="center">
<b>职务</b>
</td>
<td width="10%" height="37" align="center">
<strong>权限</strong>
</td>
<td width="10%" height="37" align="center">
<strong>编辑</strong>
</td>

</tr>

<!-- 列表数据栏 -->
<%
int PageSize = 1;
try {
if (request.getParameter("PageNumber") != null) {
PageSize = Integer.parseInt(request
.getParameter("PageNumber"));
}
} catch (Exception e) {
PageSize = 1;
}
if (PageSize < 1) {
PageSize = 1;
}
int checkNumber = 0;
try {
checkNumber = Integer.parseInt(request
.getParameter("check_Number"));
} catch (Exception e) {
checkNumber = 0;
}
String checkName = request.getParameter("check_Name");
int account = UserDaoImpl.getAllUserCount();
if (account % 12 == 0)
account = account / 12;
else
account = account / 12 + 1;

if (PageSize > account) {
PageSize = account;
}
System.out.println(request.getParameter("limit")) ;
List list = UserDaoImpl.getListUser((PageSize - 1) * 13,
13 * PageSize, checkNumber, checkName, 0);
Iterator it = list.iterator();
boolean falg = false;
int count = 0;
while (it.hasNext()) {
falg = true;
count++;
userTable admin = (userTable) it.next();
%>

<tr bgcolor="#EFF3F7" class="TableBody1"
onMouseOver="this.bgColor = '#DEE7FF';"
onMouseOut="this.bgColor='#EFF3F7';">
<td align="center" vAlign="center"><%=admin.getUsername()%></td>
<td align="center" vAlign="center"><%=admin.getMd()%></td>
<td align="center" vAlign="center"><%=admin.getBm()%></td>
<td align="center" vAlign="center"><%=admin.getZw()%></td>
<td align="center" vAlign="center">
<%
switch (admin.getLimit()) {
case 0:
out.println("管理员");
break;
case 1:
out.println("门店管理员");
break;
case 2:
out.println("录入人员");
break;
case 3:
out.println("查看人员");
break;
}
%>
</td>
<td align="center" vAlign="center">
<a href="#" onClick="editAdmin('','','','','');">修改</a>  
<a href="#" onClick="delAdmin('<%=admin.getAdmin_id() %>',,'<%=PageSize %>');">删除</a>
</td>

</tr>
<%
}
%>
<%if ( ! falg) { %>
<tr>
<td colspan="7" align="center" bgcolor="#EFF3F7" class="TableBody1"
onMouseOver="this.bgColor = '#DEE7FF';"
onMouseOut="this.bgColor='#EFF3F7';">
没有找到相应
</td>
</tr>
<%} %>

</table>
<TABLE width="778" border=0 align=center cellPadding=0 cellSpacing=0
borderColor=#ffffff style="FONT-SIZE: 10pt">
<TBODY>
<TR>
<TD height=28 align=right vAlign=center noWrap
background=images/list_middle.jpg>
  
<!-- 可以在这里插入分页导航条 -->
一总有<%=list.size() %>条
<a href="gly_manager.jsp?PageNumber=1">首页</a>

<a href="gly_manager.jsp?PageNumber=<%=PageSize-1 %>">上一页</a>

<a href="${pageUrl }">${pageNumber }</a>

<a href="gly_manager.jsp?PageNumber=<%=PageSize+1 %>">下一页</a>

<a href="gly_manager.jsp?PageNumber=<%=count %>">尾页</a>

</TD>
</TR>
</TBODY>
</TABLE>
</center>

</body>

</html>
yuyeyi 2010-01-02
  • 打赏
  • 举报
回复
haochang
小栗色兔子 2010-01-02
  • 打赏
  • 举报
回复
樓上正解。不過請把代碼按照相關的格式提出來,這樣看著才不累啊

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧