EasyUI整合SpringBoot,Spring Data对数据的分页操作
EasyUI的用法可以看中文官网,看插件是如何使用的
前端页面
<table id="dg" title="My Users" class="easyui-datagrid" style="width:700px;height:450px"
url="findall" data-options="fit:true"
toolbar="#toolbar" pagination="true"
rownumbers="false" fitColumns="true" singleSelect="true">
<thead>
<tr>
<th field="uid" width="350px">用户ID</th>
<th field="name" width="350px">用户名</th>
<th field="password" width="350px">用户密码</th>
</tr>
</thead>
</table>
分页的请求数据有俩个
private List<T> rows;//每页有多少条数据
private Long total;//所有数据的统计
先看俩个实体类
com.bjsxt.pojo.Users
package com.bjsxt.pojo;
import lombok.Data;
import javax.persistence.*;
import java.io.Serializable;
@Table(name = "t_user")
@Entity
@Data
public class Users implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "uid")
private int uid;
@Column(name = "name")
private String name;
@Column(name = "password")
private String password;
public Users(){}
public Users(String name, String password) {
this.name = name;
this.password = password;
}
}
com.bjsxt.pojo.Page
package com.bjsxt.pojo;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class Page<T> implements Serializable {
private List<T> rows;//每页有多少条数据
private Long total;//所有数据的统计
public Page() {
}
public Page(List<T> rows, Long total) {
this.rows = rows;
this.total = total;
}
}
com.bjsxt.dao.UserDao
/**
* 处理分页操作
* @param page
* @param size
* @return
*/
@Query(value = "select * from t_user limit ?,?",nativeQuery = true)
public List<Users> findAll(int page,int size);
/**
* 统计操作
* @return
*/
@Query(value = "select count(*) from t_user ",nativeQuery = true)
public Long findUser();
com.bjsxt.service.UserService
package com.bjsxt.service;
import com.bjsxt.pojo.Page;
import com.bjsxt.pojo.Users;
import java.util.List;
public interface UserService {
/**
* 登录业务
* @param name
* @param password
* @return
*/
public List<Users> selectOne(String name,String password);
/**
* 分页处理
* @param page
* @param size
* @return
*/
public Page<Users> findAll(int page, int size);
/**
* 添加用户
* @param users
*/
public int addUser(Users users);
/**
* 更新用户
* @param users
* @return
*/
public int updateUser(Users users);
/**
* 删除指定用户
* @param uid
* @return
*/
public int removeUser(int uid);
}
com.bjsxt.service.impl.UserServiceImpl
/**
* 处理分页
* @param page
* @param size
* @return
*/
@Override
public Page<Users> findAll(int page, int size) {
int start=(page-1)*size;
List<Users> users = userDao.findAll(start, size);
Long count = userDao.findUser();
Page<Users> page1=new Page<>(users,count);
return page1;
}
在这里我们是真正的处理业务逻辑,将page,size转化成我们前端所需要接受的数据
com.bjsxt.controller.UserController
/**
* 分页查询所有
* @param page
* @param rows
* @return
*/
@RequestMapping("/findall")
@ResponseBody
public Page<Users> findAll(int page,int rows){
Page<Users> usAll = us.findAll(page, rows);
return usAll;
}
EasyUI整合SpringBoot,Spring Data对数据的分页操作的更多相关文章
- Springboot spring data jpa 多数据源的配置01
Springboot spring data jpa 多数据源的配置 (说明:这只是引入了多个数据源,他们各自管理各自的事务,并没有实现统一的事务控制) 例: user数据库 global 数据库 ...
- springboot集成Spring Data JPA数据查询
1.JPA介绍 JPA(Java Persistence API)是Sun官方提出的Java持久化规范.它为Java开发人员提供了一种对象/关联映射工具来管理Java应用中的关系数据.它的出现主要是为 ...
- springboot:spring data jpa介绍
转载自:https://www.cnblogs.com/ityouknow/p/5891443.html 在上篇文章springboot(二):web综合开发中简单介绍了一下spring data j ...
- javaweb各种框架组合案例(六):springboot+spring data jpa(hibernate)+restful
一.介绍 1.springboot是spring项目的总结+整合 当我们搭smm,ssh,ssjdbc等组合框架时,各种配置不胜其烦,不仅是配置问题,在添加各种依赖时也是让人头疼,关键有些jar包之间 ...
- EasyUi+Spring Data 实现按条件分页查询
Spring data 介绍 Spring data 出现目的 为了简化.统一 持久层 各种实现技术 API ,所以 spring data 提供一套标准 API 和 不同持久层整合技术实现 . 自己 ...
- R语言Data Frame数据框常用操作
Data Frame一般被翻译为数据框,感觉就像是R中的表,由行和列组成,与Matrix不同的是,每个列可以是不同的数据类型,而Matrix是必须相同的. Data Frame每一列有列名,每一行也可 ...
- 转载:R语言Data Frame数据框常用操作
Data Frame一般被翻译为数据框,感觉就像是R中的表,由行和列组成,与Matrix不同的是,每个列可以是不同的数据类型,而Matrix是必须相同的. Data Frame每一列有列名,每一行也可 ...
- Spring Data JPA:关联映射操作
1.一对一的关系关联 需求:用户和角色一对一关联 package com.example.jpa.pojo; import javax.persistence.*; @Entity @Table(na ...
- SpringBoot第九篇:整合Spring Data JPA
作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/10910059.html 版权声明:本文为博主原创文章,转载请附上博文链接! 前言 前面几章, ...
随机推荐
- vue之注册自定义的全局js方法
前端开发的时候,总会需要写一些js方法,在vue框架中为了方便使用,可以考虑注册一个全局的js方法,下面是注册步骤: 1.0 可以在assets文件中的js文件下面新建一个js文件,如:yun.js- ...
- Spring中常用的注解及作用
@Component(value) 配置类,当使用该注解时,SpringIOC会将这个类自动扫描成一个bean实例 不写的时候,默认是类名,且首字母小写 @ComponentScan 默认是代表进行扫 ...
- hadoop伪分布式
一.安装jdk 1.下载解压 2.配置环境变量 配置成功: 二.ssh免密码登录 https://www.cnblogs.com/suwy/p/9326087.html 三.hadoop伪分布式配置 ...
- suseoj 1209: 独立任务最优调度问题(动态规划)
1209: 独立任务最优调度问题 时间限制: 1 Sec 内存限制: 128 MB提交: 3 解决: 2[提交][状态][讨论版][命题人:liyuansong] 题目描述 用2台处理机A和B处理 ...
- nyoj 115-城市平乱 (BFS)
115-城市平乱 内存限制:64MB 时间限制:1000ms 特判: No 通过数:5 提交数:8 难度:4 题目描述: 南将军统领着N个部队,这N个部队分别驻扎在N个不同的城市. 他在用这N个部队维 ...
- JS如何在不给新空间的情况下给数组去重?
1.先排序,在让相邻元素对比去重 const nums = [3, 1, 1, 5, 2, 3, 4, 3, 5, 5, 6, 4, 6, 6, 6]; Array.prototype.arrayNo ...
- ZeroC ICE的协议
- Andorid开发中遇到的问题
最近开始学习开发Android App,找了本教程,学了一些基本知识后,就开始着手做一个例子. 我始终觉得在做中学,可能会稍微快一点.很快,一个具有初步功能的App被我撸出来了. 在模拟器上运行,我发 ...
- 在input输入值改变reducer里的值
输入值改变reducer里的值 通过store.dispatch传入reducer中,函数的第二个参数可以接收到 在reducer中 在todolist文件中 然后在把this.state中的值改变
- proxy protocol
Proxy protocol 是haproxy 作者开发和设计的一个inernet 协议, 用于获取客户端的IP地址. 在使用7层代理是可以向http协议添加X-Forword-For来实现,而4层协 ...