问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

列表页使用sql语句后怎样分页

发布网友 发布时间:2022-05-04 10:39

我来回答

2个回答

懂视网 时间:2022-05-04 15:00

(1). top ... not in , (2). top .... id( max ),(3).游标 这种方法感觉比上面三种要快 ,分享一下跟好的意见 使用的是org.springframework.jdbc.core. JdbcTemplate limit = 25; public ListMapString, Object findAll(String type, final int start, f

(1). top ... not in , (2). top .... id>(max),(3).游标

这种方法感觉比上面三种要快 ,分享一下跟好的意见

使用的是 org.springframework.jdbc.core.JdbcTemplate


limit = 25;
public List> findAll(String type, final int start, final int limit) {
StringBuilder builder = new StringBuilder();
List params = new ArrayList();//给占位符赋值
builder.append("select top " + (start + limit)//第一页,start=0 ()select top 25 * ,第二页 start=25 (select top 50 *)
+ " * from v_fulldata a where 1=1");
if (type != null && type != " ") {
builder.append(" and a.atype = ? ");
params.add(type);
}
builder.append(" order by wg13 desc;");

String sql = builder.toString();
List> list = (List>) getJdbc()
.query(sql, params.toArray(), new ResultSetExtractor() {
@Override
public Object extractData(ResultSet rs)
throws SQLException, DataAccessException {
List> list = new ArrayList>();
while (rs.next()) { //将查询结果循环
if (rs.getRow() < start) { //排除小于开始索引的数据
continue;
}
Map row = new HashMap();
ResultSetMetaData rsmd = rs.getMetaData();
for (int i = 1; i <= rsmd.getColumnCount(); i++) {
row.put(rsmd.getColumnName(i), rs.getString(i));
}
list.add(row);
}
return list;
}
});
return list;
}

热心网友 时间:2022-05-04 12:08

public class UserDao {
String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_database04"; //url,数据库
String username="sa"; //用户名
String password=""; //密码
private Connection con = null;
private Statement stmt = null;
private ResultSet rs = null;
public UserDao() { //通过构造方法加载数据库驱动
try {
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
} catch (Exception ex) {
System.out.println("数据库加载失败");
}
}
public boolean Connection() { //创建数据库连接
try {
con = DriverManager.getConnection(url, username, password);
} catch (SQLException e) {
System.out.println(e.getMessage());
System.out.println("creatConnectionError!");
}
return true;
}

public ResultSet selectStatic(String sql) throws SQLException { //对数据库的查询操作
ResultSet rs=null;
if (con == null) {
Connection();
}
try {
stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs = stmt.executeQuery(sql);
} catch (SQLException e) {
e.printStackTrace();
}
return rs;
}
public void closeConnection() { //关闭数据库的操作
if (con != null && stmt != null && rs != null) {
try {
rs.close();
stmt.close();
con.close();
} catch (SQLException e) {
e.printStackTrace();
System.out.println("Failed to close connection!");
} finally {
con = null;
}
}
}
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...先讲女主的灵魂飘荡了一段时间,然后重生,请问是那本? 拯救者散热器怎么开 电脑如何一键还原系统电脑一键还原怎么操作 神舟笔记本电脑怎么重新设置神舟战神bios恢复出厂设置 神舟电脑恢复出厂设置神舟战神怎么恢复原厂系统 水泥楼梯如何铺木楼梯 家里面楼梯是水泥的不想铺地毯或者地砖还能铺什么 楼梯的水泥台阶上可以铺地板革吗 手机腾讯会议共享屏幕播放视频没声 腾讯会议共享屏幕没声音怎么办 NBA火箭季前赛如何观看。 在赣南现在在冷棚里去玉米还行吗? 江苏扬州地区八月份种玉米可以吗 NBA常规赛火箭VS勇士直播|12月21日火箭VS勇士视频文字直播|12.21火箭VS勇士录像重播 玉米市场怎么样,还能不能继续种植呢? 北京901路公交车间隔是多少?我在阎村等多长时间一趟? 徐州市901路公交车到萧县哪儿是终点站?途径多少车站? 金正移动DVD怎么插上U盘播放不了电影? 金正DVD下载视频,要转换成什么格式,我刚开始下了AVI的,可是只有声音没有电影,MP4也不行,说明书找不到 金正dvd机的仓怎么打开 金正移动dvd机怎么开机 徐州市901路公交车到萧县哪儿是终点站?几点发车? 乌鲁木齐市的901路公交车是从那里到那里的 901主路公交车路线现在早上几点钟有 西安市901经过城北客运站公交车每天早晨几点发车? 901路公交车路线 901多少分钟一趟? 塑钢窗户关不严,是里侧的卡快活动了,请问这个卡块怎样固定呢? 火车票订票付款之后,对座位不满意,可以改签原来那天那一趟火车的其他座位吗?_百度问一问 鸡块焯水之后发青什么问题 10月22日火箭VS马刺直播,CCTV5同步火箭VS马刺直播,NBA季前赛火箭VS马刺直播录像 NBA火箭VS国王直播 常规赛火箭VS国王直播 3.8火箭对国王直播视频录像观看 nba视频直播火箭vs爵士哪个网站直播 想要成为有气质的女人,到底该怎么做? 女生怎么做才能显得脱俗有气质 女人要怎么样才能做到有气质 怎样才能成为即漂亮又有气质的女人? 开始文档管理系统的研发背景 文档管理系统怎么修改预览背景颜色 如图,怎么改变资源管理器(Explorer)背景底色? Windows8如何更改文件资源管理器背景颜色? 怎样设置资源管理器的背景? RE文件管理器怎么设置系统窗口背景 怎么在windows资源管理器的工具栏上显示背景图片 怎样在es文件管理器(安卓版)中设置背景图片 以&quot;做人,从诚实开始&quot;为题目写一篇作文800字 诚信伴我成长作文800字 争做一名诚信文明的中学生作文800字 诚信,共筑踏实的人生作文 关于诚实与担当的作文800