简单的查询分页+CheckBox的全选提交

2014-11-23 22:09:47 · 作者: · 浏览: 0

最近项目需要,因为时间问题我用最简单的方法做了一个查询分页+CheckBox的全选提交,我觉得非常适合小项目和类似邮件列表的功能.下面贴出我的代码,希望朋友们多给我提毛病.

主要代码都写在JSP里.下面是一个apply_note.jsp:

< %@page contentType="text/html;charset=GBK" language="java"% >

< %@ page import="java.sql.*"% >

< %@ page import="com.deepdo.common.connect.ConSql"% >

< %@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" % >

< %@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" % >

< style type=text/css >

td,th,p,span,div,a,A {font-size:12px;text-decoration:none}

.blak a {color:#000; text-decoration:none}

.blak a:hover {color:#f00; text-decoration:underline}

< /style >

< body >

< jsp:include page="/include/deepdo.jsp" flush="true"/ >

< table width="700" border="0" align="center" cellpadding="0" cellspacing="0" height="450" >

< tr >

< td valign="top" class="bg_td1" height="450" width="160" >

< jsp:include page="/include/navigation.jsp" flush="true"/ >

< /td >

< td valign="top" class="bg_td1" height="450" width="540" >

< table width="590" border="0" align="center" cellpadding="2" cellspacing="2" bgcolor="#FAF9F5" >

< tr >

< td background="resume/images/color.jpg" class="font4" > < img src="resume/images/dot.gif" >

工作申请记录< /td >

< /tr >

< /table >

< table width="590" border="0" align="center" cellpadding="4" cellspacing="2" >

< %

//变量声明

Connection sqlCon; //数据库连接对象

Statement sqlStmt; //SQL语句对象

ResultSet sqlRst; //结果集对象

String strCon; //数据库连接字符串

String strSQL; //SQL语句

int intPageSize; //一页显示的记录数

int intRowCount; //记录总数

int intPageCount; //总页数

int intPage; //待显示页码

String strPage;

int i;

//设置一页显示的记录数

intPageSize = 10;

//取得待显示页码

strPage = request.getParameter("page");

if(strPage==null){//表明在QueryString中没有page这一个参数,此时显示第一页数据

intPage = 1;

}

else{//将字符串转换成整型

intPage = java.lang.Integer.parseInt(strPage);

if(intPage< 1) intPage = 1;

}

//获取一个TOMCAT配置的连接池

sqlCon = ConSql.getCon();

//创建一个可以滚动的只读的SQL语句对象

sqlStmt = sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);

//准备SQL语句

strSQL = "select * from apply_note where userid="+request.getAttribute("userid");

//执行SQL语句并获取结果集

sqlRst = sqlStmt.executeQuery(strSQL);

//获取记录总数

sqlRst.last();

intRowCount = sqlRst.getRow();

//记算总页数

intPageCount = (intRowCount+intPageSize-1) / intPageSize;

//调整待显示的页码

if(intPage >intPageCount) intPage = intPageCount;

% >

< tr >

< td align="center" bgcolor="#efefef" width="150" height="27" >已经申请过的职位< /td >

< td align="center" bgcolor="#efefef" width="140" height="27" >公司名称< /td >

< td align="center" bgcolor="#efefef" width="75" height="27" >申请时间< /td >

< td align="center" bgcolor="#efefef" width="25" height="27" >< input type=CheckBox name="selectAll" onClick="selectAll();" >< /td >

< /tr >

< %

if(intPageCount >0){

//将记录指针定位到待显示页的第一条记录上

sqlRst.absolute((intPage-1) * intPageSize + 1);

//显示数据

i = 0;

while(i< intPageSize && !sqlRst.isAfterLast()){

% >

< form name ="noteForm" action="noteRemove.do" method="post" >

< tr >

< td >< a href=< %=sqlRst.getString("url")% > target="_blank" >< %=sqlRst.getString("job")% >< /a >< /td >

< td >< %=sqlRst.getString("unit")% >< /td >

< td >< %=sqlRst.getString("date_time")% >< /td >

< td width="26" align="center" >< input type=CheckBox name="id" value=< %=sqlRst.getString("id")% > >< /td >

< /tr >

< %

sqlRst.next();

i++;

}

}

% >

< tr >

< td >

< a href="note.dopage=1" >首页< /a >

< %if(intPage >1){% >< a href="note.dopage=< %=intPage-1% >" >上一页< /a >< %}

else {% >< a href="#" title="已经是第一页" >上一页< /a >< %}% >

< %if(intPage< intPageCount){% >< a href="note.dopage=< %=intPage+1% >" >下一页< /a >< %}

else {% >< a href="#" title="已经是最后一页" >下一页< /a >< %}% >

< a href=note.dopage=< %=intPageCount% > >末页< /a >

< /td >

< td >

共 < %=intPageCount% > 页申请记录

当前为第 < %=intPage% > 页