zoukankan      html  css  js  c++  java
  • SpringData学习03

    滴水穿石

    1、

    CrudRepository 是 Repository 类的一个子集,主要实现了一些 CRUD 的方法

    示例:

       @Transactional
        public void savePersons(List<Person> pList){
            pRepository.save(pList);
        }

    单元测试

      @Test
        public void savesTest(){
            
            List<Person> plist = new ArrayList<>();
            Person p = null;
            for(int i = 'a' ; i < 'z' ; i++){
                p = new Person();
                p.setName(i + "" + i);
                p.setAge(i);
                p.setBrith(new Date());
                p.setEmail(i + "" + i + "@cfb.com");
                plist.add(p);
            }
            pService.savePersons(plist);
        }

    结果: 测试通过,入库成功

     2、

     

    PagingAndSortingRepository 是 CrudRepository  的子类,多了分页方法
    示例:

    service层

    public Page<Person> findForPage(PageRequest pRequest){
            return pRepository.findAll(pRequest);
        }

    单元测试

      @Test
        public void findForPage() {
            int page = 3;
            int size = 5;
            PageRequest pRequest = new PageRequest(page, size);
            Page<Person> plist = pService.findForPage(pRequest);
            System.out.println("总条数: " + plist.getTotalElements());
            System.out.println("总页数: " + plist.getTotalPages());
            System.out.println("当前页数: " + plist.getNumber());
            System.out.println("当前页面记录数: " + plist.getNumberOfElements());
            System.out.println("当前页面List: " + plist.getContent());
        }

    测试结果

    由此可以看出 page 是从 0 开始计算的

    关于排序

    修改上边的分页中的代码

    //关于排序
            Order order1 = new Order(Direction.DESC, "id");
            Order order2 = new Order(Direction.ASC,"email");
            Sort sort = new Sort(order1,order2);
            PageRequest pRequest = new PageRequest(page, size, sort);

     测试结果:

    以上的分页无法通过条件查询

    怎么破?继续往下

    —————————————————————————————————————————————————————————————————————————

    无论如何,心平气和

  • 相关阅读:
    今天18:40分左右一部价值500多块捷安特自行车被盗!
    利用ASP.net上传文件
    _desktop.ini
    Visual Studio .NET 设置移植工具
    审计厅的项目终于可以告一段落了
    Word2CHM Assistant(Word2CHM助手)V2.1.0 破解版
    最近比较烦!
    delphi 中 Format 用法总汇
    谈谈公司管理及需求方面的问题
    [待续]SQLSERVER无法访问远程服务器问题
  • 原文地址:https://www.cnblogs.com/cfb513142804/p/7234018.html
Copyright © 2011-2022 走看看