栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SpringBoot -基于SpringBoot的SSMP整合案例(中)- MP日志&&分页查询&&条件查询

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringBoot -基于SpringBoot的SSMP整合案例(中)- MP日志&&分页查询&&条件查询

文章目录
  • 开启MP运行日志
    • 编辑yml
    • 运行测试(getAll)
    • 运行测试(getAll)2
    • 小结
  • 测试查询
    • 分页查询
      • 编写测试
      • 出现问题
      • 编写MPConfig类
      • 测试通过
      • 查看查询返回值
      • 小结
    • 条件查询
      • 编写测试
      • 测试成功
      • 语句优化(推荐使用)
        • 编写测试
        • 测试成功
        • 遇到问题
        • 优化方案
        • 测试运行
      • 小结

开启MP运行日志

后台测试可以开启日志

上线运行时不要开启日志,因为服务器负担太大,容易崩溃

编辑yml

mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

运行测试(getAll)

运行测试(getAll)2

小结

测试查询 分页查询 编写测试
@Test
void testGetPage(){
    //两个参数分别代表“第几页”,每页显示多少条数据
    Page page = new Page(2,2);
    userMapper.selectPage(page,null);
}
出现问题

SELECT id,username,password,gender,addr FROM tb_user

并不是预期sql语句

编写MPConfig类

拦截器

package com.taotao.config;

import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;


@SuppressWarnings({"all"})
//配置类
@Configuration
public class MPConfig {
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor(){
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor());
        return interceptor;
    }
}

测试通过

查看查询返回值

小结

条件查询 编写测试
@Test
void testGetBy(){
    QueryWrapper qw = new QueryWrapper();
    qw.like("username","刘鸿涛");
    userMapper.selectList(qw);
}
测试成功

语句优化(推荐使用)

语法集检查

编写测试
@Test
void testGetBy(){
    QueryWrapper qw = new QueryWrapper();
    qw.like("username","刘鸿涛");
    userMapper.selectList(qw);
}
测试成功

遇到问题

当姓名接收为null时,MP检测为%null%,语句,并不是理想结果

优化方案
    @Test
    void testGetBy2(){
        String name = null;
        LambdaQueryWrapper qw = new LambdaQueryWrapper();
//        if(name != null)  qw.like(User::getUsername,name);
        qw.like(name != null,User::getUsername,name);   //如果为true就连,如果为false,就不连
        userMapper.selectList(qw);
    }
测试运行

相当于select * from tb_user

小结

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/854960.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号