Spring Hibernate实现分页功能

网友投稿 251 2023-05-18


Spring Hibernate实现分页功能

本实例采用Spring+Hibernate实现简单的分页功能,供大家参考,具体内容如下

最关键的是运用Hibernate的query里面的两个方法:

query.setFirstResult((p.getPage()-1)*p.getRows()); 指定从那个对象开始查询,参数的索引位置是从0开始的。

query.setMaxResults(p.getRows()); 分页时,一次最多产寻的对象数 主要实现类:

package com.paging;

import java.util.List;

import javax.annotation.Resource;

import org.hibernate.Query;

import org.hibernate.SessionFactory;

import com.user.User;

import sun.nio.cs.US_ASCII;

puhttp://blic class Paging {

final int num=3;

@Resource

SessionFactory sessionFactory;

public void setSessionFactory(SessionFactory sessionFactory) {

this.sessionFactory = sessionFactory;

}

public List paging(int index) {

String hql = "from User";

Query query = sessionFactory.getCurrentSession().createQuery(hql);

query.setFirstResult((index-1)*num);

query.setMaxResults(num);

return query.list();

}

}

web层:

package com.web;

import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Controller;

import org.springframework.ui.Model;

import org.springframework.web.bind.annotation.RequestMapping;

import com.paging.Paging;

import com.user.User;

@Controller

@RequestMapping("/Page")

public class Web {

@Resource

Paging paging;

public void setPaging(Paging paging) {

this.paging = paging;

}

@RequestMapping("/page")

public String page(Model model,int index) {

List list = paging.paging(index);

model.addAttribute("list", list);

return "index";

}

}

jsp页面:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<html>

${list.name}

${list.adderss}


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Mybatis 简介与原理
下一篇:详解springboot整合mongodb
相关文章

 发表评论

暂时没有评论,来抢沙发吧~