java中的example_mybatis中关于example类详解

更新时间:2023-06-28 09:25:53 阅读: 评论:0

java中的example_mybatis中关于example类详解
这⼏天刚接触example,很多内容都是破碎的,写⼀篇⽂章加深理解。
⼀、什么是example类
中介是什么意思mybatis-generator会为每个字段产⽣Criterion,为底层的l创建动态sql。如果表的字段⽐较多,产⽣的example类会⼗分庞⼤。理论上通过example类可以构造你想到的任何筛选条件。在mybatis-generator中加以配置,配置数据表的⽣成操作就可以⾃动⽣成example了。具体配置可以参考 Mybatis-Generator的具体使⽤⽅法 - zorro的菜鸟笔记 - 博客园。
下⾯是mybatis⾃动⽣成example的使⽤。
⼆、了解example成员变量
//作⽤:升序还是降序 //参数格式:字段+空格+asc(desc) protected String orderByClau;
//作⽤:去除重复 //true是选择不重复记录,fal,反之 protected boolean distinct;
//⾃定义查询条件 //Criteria的集合,集合中对象是由or连接 protected List oredCriteria;
马头琴独奏
/
/内部类Criteria包含⼀个Cretiron的集合, //每⼀个Criteria对象内包含的Cretiron之间是由 AND连接的 public static class Criteria extends GeneratedCriteria {
protected Criteria() {super();}
}
//是mybatis中逆向⼯程中的代码模型 protected abstract static class GeneratedCriteria {......}
//是最基本,最底层的Where条件,⽤于字段级的筛选 public static class Criterion {......}
三、example使⽤前的准备
⽐如我的example是根据ur表⽣成的,UrMapper属于dao层,l是对应的映射⽂件。
UrMapper接⼝:
long countByExample(CompetingStoreExample example);
List lectByExample(CompetingStoreExample example);
在我们的测试类⾥:
UrExample example = new UrExample();
UrExample.Criteria criteria = ateCriteria();
四、查询⽤户数量
long count = untByExample(example);
类似于:lect count(*) from ur
五、where条件查询或多条件查询
example.tOrderByClau(“age asc"); //升序 example.tDistinct(fal); //不去重
if(!StringUtils.Name())){
Criteria.Name());
}
if(!StringUtils.Sex())){
Criteria.Sex());
}
List urList=urMapper.lectByExample(example);
类似于:lect * from ur where name={#ur.name} and x={#ur.x} order by age asc; UrExample.Criteria criteria1 = ateCriteria();
高中生雯雯日记
世界上最可爱的狗UrExample.Criteria criteria2 = ateCriteria();
下雨文案if(!StringUtils.Name())){
Criteria1.Name());
}
if(!StringUtils.Sex())){
Criteria2.Sex());
}
<(criteria2);
List urList=urMapper.lectByExample(example);
类似于:lect * from ur where name={#ur.name} or x={#ur.x} ;
六、模糊查询
if(!StringUtils.Name())){
criteria.andNameLIke(‘%’+name+’%’);
}
List urList=urMapper.lectByExample(example);
类似于:lect * from ur where name like %{#ur.name}%
组组词七、分页查询
春天的阳光
int start = (currentPage - 1) * rows;
//分页查询中的⼀页数量 example.tPageSize(rows);
//开始查询的位置 example.tStartRow(start);服务内容怎么写
List urList=urMapper.lectByExample(example);
类似于:lect * from ur limit start to rows
如果喜欢我的⽂章欢迎关注我的专栏~

本文发布于:2023-06-28 09:25:53,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/1057854.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:条件   查询   配置
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图