概述
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和排序所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复