标签:alt 排序 超过 年龄 操作 html 等于 cep 效率
性能分析插件
开发过程中我们会遇到一些运行较慢的SQL,我们需要进行测试,或者使用druid进行操作。
在mybatis-plus中也提供了这样的插件,如果超过就停止运行!
1.导入插件
/**
* SQL执行效率插件
*/
@Bean
@Profile({"dev","test"})//设置dev test环境开启,保证我们的效率
public PerformanceInterceptor performanceInterceptor(){
PerformanceInterceptor performanceInterceptor = new PerformanceInterceptor();
performanceInterceptor.setMaxTime(1);//ms毫秒 设置sql执行的最大时间,如果超过了则不执行
performanceInterceptor.setFormat(true);//是否开启格式化(开启)
return performanceInterceptor;
}
得在springboot中配置环境dev 或者 test环境。
#开发环境 spring.profiles.active=dev
2.测试使用
//测试通过id查询用户
@Test
public void selectById(){
SysUser sysUser = userMapper.selectById(1303211966619484161L);
System.out.println(sysUser);
}

注意:该方法3.0x已经被移除,官方不再推荐使用!
Wrapper:十分重要
我们写的一些复杂的SQL我们可以使用它来代替!
条件构造器官网地址:https://baomidou.com/guide/wrapper.html#abstractwrapper
测试使用:
@SpringBootTest
public class WrapperApplication {
@Autowired
private UserMapper userMapper;
//查询name不为空的用户,并且邮箱不为空且年龄大于等于12的用户
@Test
public void contextLoads(){
QueryWrapper<SysUser> wrapper=new QueryWrapper<SysUser>();
wrapper.isNotNull("username")
.isNotNull("email")
.ge("age", 18);
List<SysUser> users = userMapper.selectList(wrapper);
users.forEach(System.out::println);
}
//查询名字叫XXX的一个人
@Test
public void contextLoads2(){
QueryWrapper<SysUser> wrapper = new QueryWrapper<>();
wrapper.eq("username", "手残");
SysUser sysUser = userMapper.selectOne(wrapper);
System.out.println("username = " + sysUser);
}
//查询年龄在21到30之间的用户
@Test
public void contextLoads3_1(){
QueryWrapper<SysUser> wrapper = new QueryWrapper<>();
wrapper.between("age", 21, 30);
List<SysUser> user = userMapper.selectList(wrapper);//查询一个数据有结果数据时我们可以使用List 或者 Map
user.forEach(System.out::println);
}
//查询年龄在21到30之间的用户数
@Test
public void contextLoads3_2(){
QueryWrapper<SysUser> wrapper = new QueryWrapper<>();
wrapper.between("age", 21, 30);//区间
Integer count = userMapper.selectCount(wrapper);//查询结果数
System.out.println("count = " + count);
}
//查询名字不含j的而且email以t开头的
@Test
public void contextLoads4(){
QueryWrapper<SysUser> wrapper = new QueryWrapper<>();
wrapper.notLike("username", "j")
.likeRight("email", "t");
List<Map<String, Object>> maps = userMapper.selectMaps(wrapper);
maps.forEach(System.out::println);
}
//id在子查询查出来
@Test
public void contextLoads5(){
QueryWrapper<SysUser> wrapper = new QueryWrapper<>();
wrapper.inSql("user_id", "select user_id from sys_user where user_id < 3");
List<Object> objects = userMapper.selectObjs(wrapper);
objects.forEach(System.out::println);
}
//查询name不为空的用户、并且邮箱不为空、且年龄大于等于16的用户,并按age升序排序
@Test
public void contextLoads6(){
QueryWrapper<SysUser> wrapper=new QueryWrapper<SysUser>();
wrapper.isNotNull("username")
.isNotNull("email")
.ge("age", 12)
.orderByAsc("age");
List<SysUser> users = userMapper.selectList(wrapper);
users.forEach(System.out::println);
}
}
素材来源地址:狂神说 https://www.bilibili.com/video/BV17E411N7KN?p=2
MyBatis-Plus快速入门(四)性能分析插件、条件构造器
标签:alt 排序 超过 年龄 操作 html 等于 cep 效率
原文地址:https://www.cnblogs.com/jjsir/p/13639331.html