SpringBoot——spring-data-jpa之分页查询

SpringBoot——spring-data-jpa之分页查询SpringBoot——spring-data-jpa之分页查询

大家好,又见面了,我是你们的朋友全栈君。

service代码

 package com.youyou.address.service;

import com.youyou.address.dao.ContacterDao;
import com.youyou.address.dao.ContacterEORepo;
import com.youyou.address.entity.ContacterEO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.data.querydsl.QPageRequest;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

@Service
@Transactional
public class ContacterService {

    @Autowired
    private ContacterDao dao;

    @Autowired
    private ContacterEORepo contacterEORepo;

    public void insertOne(ContacterEO contacterEO) {
        dao.insertOne(contacterEO);
    }

    public List<ContacterEO> findAll() {
        return dao.findAll();
    }

    /**
     * 保存联系人
     *
     * @param contacterEO
     */
    public void saveOne(ContacterEO contacterEO) {
        contacterEORepo.save(contacterEO);
    }

    /**
     * 分页查询
     * @param page
     * @return
     */
    public Page<ContacterEO> findByPage(PageRequest page) {
        Page<ContacterEO> all = contacterEORepo.findAll(page );
        return all;
    }

}

controller代码如下:

 package com.youyou.address.controller;

import com.youyou.address.entity.ContacterEO;
import com.youyou.address.service.ContacterService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Sort;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@Api(description = "联系人接口")
@RestController
@RequestMapping(value = "/contacter")
public class ContacterController {

    @Autowired
    private ContacterService service;

    @ApiOperation(value = "新增")
    @GetMapping("/add")
    public ContacterEO add(ContacterEO contacterEO) {
        System.out.println("添加一个联系人");

        service.saveOne(contacterEO);

        return contacterEO;
    }

    @ApiOperation(value = "查询所有")
    @GetMapping("/findAll")
    public List<ContacterEO> findAll() {
        return service.findAll();
    }

    @ApiOperation(value = "分页查询")
    @GetMapping("/findByPage")
    public Page<ContacterEO> findByPage(int pageNo, int size ,Sort.Direction direction) {
        PageRequest page = PageRequest.of(pageNo, size, Sort.by(direction, "name"));
        return service.findByPage(page);
    }

}

核心代码就是

 PageRequest page = PageRequest.of(pageNo, size, Sort.by(direction, "name"));

pageNo:页码(从0开始)

size:每页条数

direction:排序标识,即ASC或DESC

name:需要排序的字段

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106463.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 一键进入高通9008模式_如何进入高通模式

    一键进入高通9008模式_如何进入高通模式Android8.0高通PDAF调试-actuatorsensitivity有一说一遇到的问题点调试过程中发现进不来pdaf流程log显示如下:01-0108:08:54.42524146352Dmm-camera:<STATS_AF><LOW>3994:af_port_handle_module_event:HandleAFmoduleeventoftype:001-0108:08:54.42524146352

    2022年9月4日
    3
  • C#调用Win32 api学习总结

    C#调用Win32 api学习总结从.NET平台调用Win32API    Win32API可以直接控制MicrosoftWindows的核心,因为API(ApplicationProgrammingInterface)本来就是微软留给我们直接控制Windows的接口。一.  基础知识    Win32API是C语言(注意,不是C++语言,尽管C语言是C++语言的子集)函数集。

    2022年10月11日
    0
  • 路由器WAN口IP显示为10、100、172开头,网络被电信联通等运营商做了NAT转发

    路由器WAN口IP显示为10、100、172开头,网络被电信联通等运营商做了NAT转发

    2021年11月17日
    38
  • 分布式——CAP原理

    分布式——CAP原理一.概述在理论计算机科学中,CAP原理指出对于一个分布式系统来说,当设计读写操作时,只能同时满足一下三点中两个:一致性(Consistence):所有节点访问同一份最新的数据副本 可用性(Avaliability):非故障的节点在合理时间内返回合理的响应(不是错误或者超时的响应) 分区容错性(Partitiontolerance):分布式系统出现网络分区(分布式系统中,多个节点之前的网络本来是连通的,但是由于某些故障,比如部分节点网络出了问题。某些节点之间不连通,整个网络就分为几个区域,这就叫

    2022年5月19日
    46
  • 解决使用Nginx错误 Failed to load resource: net::ERR_INCOMPLETE_CHUNKED_ENCODING问题

    解决使用Nginx错误 Failed to load resource: net::ERR_INCOMPLETE_CHUNKED_ENCODING问题Failedtoloadresource:net::ERR_INCOMPLETE_CHUNKED_ENCODING问题先说解决办法:直接删除Nginx缓存文件即可;问题描述:使用Nginx代理的服务,一直使用正常,突然昨天就访问不了了;通过IP访问和端口能正常访问。原本以为是请求头文件过大导致资源未加载完问题;然后修改了Tomcat中配置中的请求头文件,在Tomcat的…

    2022年10月23日
    0
  • Java判断回文字符串_java将字符串反转输出

    Java判断回文字符串_java将字符串反转输出java判断回文字符串几种简单的实现:1.将字符串倒置后逐一比较,实现如下:publicclassHuiWenTest{/***@SERLIN*/publicstaticvoidmain(String[]args){Stringstr=””;System.out.println(“请输入一个字符串”);Scannerin

    2022年5月3日
    45

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号