JSP 页面分页代码示例-1

<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*,com.centurycome.sql.*" errorPage=""
 %><%!
private static final String DATASOURCE_NAME = "java:comp/env/ds/msgstorage/mysql";
private int getParameterInt(HttpServletRequest request, String paramName, int defValue) {
 String strVal = request.getParameter(paramName);
 if (strVal == null || strVal.length() < 1) {
  return defValue;
 }
 try {
  return Integer.parseInt(strVal);
 } catch (NumberFormatException nfex) {
  return defValue;
 }
}
  %><html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>MMS列表</title>
<link href="config.css" rel="stylesheet" type="text/css">
</head>

<body>
<center>
  <p><font color="blue">注意:尚未制作登录功能!</font></p>
</center>
<hr width="80%"/>
<table width="780" border="0" align="center">
<tr><td align="center" valign="top">
<%
String pageName = "listmms.jsp";
int pn = getParameterInt(request, "pn", 0) - 1;
int ps = 20;
int svcId = getParameterInt(request, "svcid", 0);
String sqlstr = "select count(*) from prepared_messages p, mms_services s where s.service_code = p.service_code and s.status = 1";
if (svcId > 0) {
 sqlstr += " and s.service_id = " + Integer.toString(svcId);
}
int pageCount = 0;

Connection conn = SQLConnection.getConnection(DATASOURCE_NAME);
try {
 int totalCount = SQLConnection.getInt(conn, sqlstr);
 pageCount = (totalCount + ps - 1) / ps;
 if (pn >= pageCount) {
  pn = pageCount - 1;
 }
 if (pn < 0) {
  pn = 0;
 }

 if (totalCount > 0) {
  sqlstr = "select message_id, msg_title, service_name, send_date"
   + " from prepared_messages p, mms_services s"
   + " where s.service_code = p.service_code and s.status = 1";
  if (svcId > 0) {
   sqlstr += " and s.service_id = " + Integer.toString(svcId);
  }
  sqlstr += " order by message_id desc"
   + " limit " + (pn * ps) + ", " + ps;
  Statement cmd = conn.createStatement();
  try {
%>
 <table>
 <tr bgcolor="lightblue">
 <td width="60" align="center">序号</td>
 <td width="120" align="center">标题</td>
 <td width="100" align="center">服务名称</td>
 <td width="80" align="center">日期</td>
 <td width="128" align="center" colspan="2">操作</td>
 </tr>
<%
   ResultSet rs = cmd.executeQuery(sqlstr);
   int i = 0;
   while (rs.next()) {
    int mid = rs.getInt(1);
    String clr = null;
    if (i == 0) {
     clr = "white";
    } else {
     clr = "lightyellow";
    }
    i = (i + 1) % 2;
%><tr bgcolor="<%= clr %>">
 <td align="left">&nbsp;<a href="showmm.jsp?mid=<%= mid %>" target="fraMMShow"><%= mid %></a>&nbsp;</td>
 <td align="center">&nbsp;<%= rs.getString(2) %>&nbsp;</td>
 <td align="center">&nbsp;<%= rs.getString(3) %>&nbsp;</td>
 <td align="center">&nbsp;<%= rs.getString(4) %>&nbsp;</td>
 <td width="60" align="center"><a href="deletemm.jsp?mid=<%= mid %>&pn=<%= pn + 1 %>&svcid=<%= svcId %>">删除</a></td>
 <td width="60" align="center"><a href="editmm.jsp?mid=<%= mid %>&pn=<%= pn + 1 %>&svcid=<%= svcId %>">编辑</a></td>
</tr><%
   }
%>
 </table>
<%
  } finally {
   cmd.close();
  }
 }
} finally {
 conn.close();
}
%>
<br/>
<form name="frmPage" method="get" action="<%= pageName
 %>"><table width="400" border="0">
<tr>
 <td><% if (pn > 0) { %><a href="<%= pageName %>?pn=1&svcid=<%= svcId %>">首页</a><%
   } else { %>首页<% } %></td>
 <td><% if (pn > 0) { %><a href="<%= pageName %>?pn=<%= pn %>&svcid=<%= svcId %>">前页</a><%
   } else { %>前页<% } %></td>
 <td><% if (pn < pageCount - 1) { %><a href="<%= pageName %>?pn=<%= pn + 2 %>&svcid=<%= svcId %>">后页</a><%
   } else { %>后页<% } %></td>
 <td><% if (pn < pageCount - 1) { %><a href="<%= pageName %>?pn=<%= pageCount %>&svcid=<%= svcId %>">末页</a><%
   } else { %>末页<% } %></td>
 <td>第<input type="text" name="pn" value="<%= pn + 1 %>" size="8" />页&nbsp;<input type="submit" value="跳转" />
 <input type="hidden" name="svcid" value="<%= svcId %>" />
 </td>
</tr>
</table></form>
</td><td align="center" valign="top">
 <iframe src="showmm.jsp" id="fraMMShow" name="fraMMShow" width="220" height="600" frameborder="0">
</td></tr>
</table>
</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值