我是靠谱客的博主 发嗲溪流,最近开发中收集的这篇文章主要介绍Mybatis-plus和排序,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Mybatis-plus

==============mybatis-plus=
1:在这里插入代码片3版本后EntityWrapper已经被QueryWrapper代替

// 条件构造器QueryWrapper使用步骤

1:mapper 文件注入注释 @Param(“ew”)
List findBySearch(Page page, @Param(“ew”) QueryWrapper entityWrapper);

2:.xml形成条件查询

<select id="findBySearch"  parameterType="java.lang.String" resultMap="BaseResultMap">
    select distinct
    <include refid="Base_Column_List"/>
    from instruments_reserve
    <where>
     ${ew.sqlSegment}
    </where>
  </select>

3: service层自定义查询条件(eg:模糊查询)

 QueryWrapper<InstrumentsReserve> wrapper = new QueryWrapper<>();
        if(form.getParams()!= null) {
            wrapper.or().like("subject", form.getParams())
                    .or().like("chinese_name", form.getParams())
                    .or().like("org_name", form.getParams())
                    .or().like("test_index", form.getParams())
                    .or().like("orders", form.getParams());
        }
        List<InstrumentsReserve> list = reserveMapper.findBySearch(page,wrapper);

分页:
Page page = new Page();
page.setSize(form.getSize());
page.setCurrent(form.getPage()+1);

返回数据及分页: return PageUtils.toPage(list,page);

4: 分页工具类: PageUtils

 public static <T> PageData<T> toPage(List<T> data, Page page) {
        PageData<T> pageData = new PageData<>();
        pageData.setContent(data);
        pageData.setTotalElements(page.getTotal());
        pageData.setCurrent(page.getCurrent());
        pageData.setSize(page.getSize());
        return pageData;
    }
/**
 * 生成分页对象数据
 *
 * @param page 分页数据
 * @param data 数据集合
 * @param <T>  查询类型
 * @param <E>  返回类型
 * @return PageDataVo<E>
 */
  public static <T, E> PageData<E> toPage(IPage<T> page, List<E> data) {
        PageData<E> newPageDetail = new PageData<>();
        newPageDetail.setTotalElements(page.getTotal());
        newPageDetail.setSize(page.getSize());
        newPageDetail.setCurrent(page.getCurrent());
        newPageDetail.setContent(data);
        return newPageDetail;
    }

排序=
//LSD低位优先排序:固定长度的字符,按低到高排序。
// LSD 排序

 public static void sort(String[] a, int W){
        //通过前W个字符将a[]排序
        int N = a.length;
        int R = 256;
        String[] aux = new String[N];
        for(int d = W-1; d >= 0;d--){
            int[] count = new int[R+1];
            //统计频率
            for(int i = 0;i < N;i++){
                count[a[i].charAt(d)+1]++;
            }
            //将频率转转换为索引
            for(int r = 0;r < R;r++){
                count[r+1] +=count[r];
            }
            //元素
            for(int i = 0;i < N;i++){
                aux[count[a[i].charAt(d)]++] = a[i];
            }
            for(int i = 0;i < N;i++){
                a[i] = aux[i];
            }
        }
    }

//快速排序法 快速:

static void quickSort(String[] arr,int left,int right)            //快速排序算法
    {
        String  f,t;
        int rtemp,ltemp;
        ltemp=left;
        rtemp=right;
        f=arr[(left+right)/2];                        //分界值
        while(ltemp<rtemp)
        {
            while(arr[ltemp].compareTo(f)<0)
            {
                ++ltemp;
            }
            while(arr[rtemp].compareTo(f)>0) 
            {
                --rtemp;
            }
            if(ltemp<=rtemp)
            {
                t=arr[ltemp];
                arr[ltemp]=arr[rtemp];
                arr[rtemp]=t;
                --rtemp;
                ++ltemp;
            }
        }
        if(ltemp==rtemp) 
        {
            ltemp++;
        }
        if(left<rtemp) 
        {
            quickSort(arr,left,ltemp-1);            //递归调用
        }
        if(ltemp<right) 
        {
            quickSort(arr,rtemp+1,right);            //递归调用
        }
    }


欢迎来看看我的世界 (公众号二维码)
我的公众号

最后

以上就是发嗲溪流为你收集整理的Mybatis-plus和排序的全部内容,希望文章能够帮你解决Mybatis-plus和排序所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部