Java的分页查询方法
2010-03-18 16:56
579 查看
package com.student.impl;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.student.dao.StuInfoDao;
import com.student.entity.StuInfo;
public class StuInfoDaoImpl extends BaseDaoImpl implements StuInfoDao{
public int deleteStuInfo(int[] ids) {
Connection con=null;
con=this.getConnection();
PreparedStatement ps=null;
String sql="delete from StuInfo where stuId=?";
try {
ps=con.prepareStatement(sql);
for(int i=0;i<ids.length;i++)
{
ps.setInt(1,ids[i]);
ps.addBatch();
}
ps.executeBatch();
} catch (SQLException e) {
e.printStackTrace();
}
finally
{
this.closeConnection(con);
}
return 0;
}
public List<StuInfo> getStuInfoPage(int page, int pageSize) {
List<StuInfo> stus=new ArrayList<StuInfo>();
Connection con=null;
PreparedStatement ps=null;
ResultSet rs=null;
con=this.getConnection();
String sql="select top (?) * from StuInfo where stuid not in(select top (?) stuid from StuInfo )";
try {
ps=con.prepareStatement(sql);
ps.setInt(1, pageSize);
ps.setInt(2, (page-1)*pageSize);
rs=ps.executeQuery();
while(rs.next())
{
StuInfo stu=new StuInfo();
stu.setStuid(rs.getInt("stuId"));
stu.setStuName(rs.getString("stuName"));
stu.setStuAddress(rs.getString("stuAddress"));
stu.setStuSex(rs.getInt("stuSex"));
stus.add(stu);
}
} catch (SQLException e) {
e.printStackTrace();
}
finally
{
this.closeConnection(con);
}
return stus;
}
/*
* 查询总页数
*/
public int getSumPage(int pageSize) {//参数是每页显示的条数
int count=0;//总条数
Connection con=null;
PreparedStatement ps=null;
ResultSet rs=null;
con=this.getConnection();//获得连接
try {
String sql="select count(*) from StuInfo";
ps=con.prepareStatement(sql);
rs=ps.executeQuery();
while(rs.next())
{
count=rs.getInt(1);//总条数---获得总条数
}
return count%pageSize==0?count/pageSize:count/pageSize+1;
} catch (SQLException e) {
e.printStackTrace();
}
finally
{
this.closeConnection(con);
}
return count;
}
// public static void main(String[] args) {
// StuInfoDao sid=new StuInfoDaoImpl();
// int pageNum=sid.getSumPage(5);
// System.out.println(pageNum);
//
// }
}
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import com.student.dao.StuInfoDao;
import com.student.entity.StuInfo;
public class StuInfoDaoImpl extends BaseDaoImpl implements StuInfoDao{
public int deleteStuInfo(int[] ids) {
Connection con=null;
con=this.getConnection();
PreparedStatement ps=null;
String sql="delete from StuInfo where stuId=?";
try {
ps=con.prepareStatement(sql);
for(int i=0;i<ids.length;i++)
{
ps.setInt(1,ids[i]);
ps.addBatch();
}
ps.executeBatch();
} catch (SQLException e) {
e.printStackTrace();
}
finally
{
this.closeConnection(con);
}
return 0;
}
public List<StuInfo> getStuInfoPage(int page, int pageSize) {
List<StuInfo> stus=new ArrayList<StuInfo>();
Connection con=null;
PreparedStatement ps=null;
ResultSet rs=null;
con=this.getConnection();
String sql="select top (?) * from StuInfo where stuid not in(select top (?) stuid from StuInfo )";
try {
ps=con.prepareStatement(sql);
ps.setInt(1, pageSize);
ps.setInt(2, (page-1)*pageSize);
rs=ps.executeQuery();
while(rs.next())
{
StuInfo stu=new StuInfo();
stu.setStuid(rs.getInt("stuId"));
stu.setStuName(rs.getString("stuName"));
stu.setStuAddress(rs.getString("stuAddress"));
stu.setStuSex(rs.getInt("stuSex"));
stus.add(stu);
}
} catch (SQLException e) {
e.printStackTrace();
}
finally
{
this.closeConnection(con);
}
return stus;
}
/*
* 查询总页数
*/
public int getSumPage(int pageSize) {//参数是每页显示的条数
int count=0;//总条数
Connection con=null;
PreparedStatement ps=null;
ResultSet rs=null;
con=this.getConnection();//获得连接
try {
String sql="select count(*) from StuInfo";
ps=con.prepareStatement(sql);
rs=ps.executeQuery();
while(rs.next())
{
count=rs.getInt(1);//总条数---获得总条数
}
return count%pageSize==0?count/pageSize:count/pageSize+1;
} catch (SQLException e) {
e.printStackTrace();
}
finally
{
this.closeConnection(con);
}
return count;
}
// public static void main(String[] args) {
// StuInfoDao sid=new StuInfoDaoImpl();
// int pageNum=sid.getSumPage(5);
// System.out.println(pageNum);
//
// }
}
相关文章推荐
- java分页查询 方法一 Query
- java分页查询 方法二 Criteria
- java中软件开发的假分页和模糊查询的方法
- java中如何实现模糊分页查询
- MongoDB 分页查询的skip方法及性能
- Java分页查询中分页的分页
- java 反射机制构建JDBC查询方法
- Java对象查询方法:Jxpath(转译)
- java分页工具类的使用方法
- Java连接HBASE数据库,创建一个表,删除一张表,修改表,输出插入,修改,数据删除,数据获取,显示表信息,过滤查询,分页查询,地理hash
- Java列表分页查询结果导出到CSV文件,导入CSV文件并解析
- SQL分页存储过程和C#中linq分页查询方法
- java中把查询出来的结果进行分页
- 执行数据库查询时,如果要查询的数据有很多,假设有1000万条,用什么办法可以提高查询速率?在数据库方面或java代码方面有什么优化的方法
- [置顶] oracle数据库分页查询原理与事例实现(五六种方法)
- jQuery基于xml格式数据实现模糊查询及分页功能的方法
- 取得查询的记录总数分页显示用的方法
- 【java】spring-data-jpa 集成hibernate实现多条件分页查询
- Java操作MongoDB模糊查询和分页查询
- Java之数组查询Arrays类的binarySearch()方法详解