• springboot项目集成Mybatisplus配置和使用


    1.首先我们还是引入依赖(springboot 版本2.0.4)

    <properties>
    <mybatisplus-spring-boot-starter.version>1.0.5</mybatisplus-spring-boot-starter.version>
    </properties>

    <!-- alibaba的druid数据库连接池 -->
    <dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid-spring-boot-starter</artifactId>
    <version>1.1.10</version>
    </dependency>
    <dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatisplus-spring-boot-starter</artifactId>
    <version>${mybatisplus-spring-boot-starter.version}</version>
    </dependency>
    <dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.47</version>
    </dependency>
    <dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus</artifactId>
    <version>2.1.9</version>
    </dependency>
    2.yml配置
    spring:
    datasource:
    url: jdbc:mysql://127.0.0.1:3306/czq?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull
    username: root
    password: 123
    filters: log4j,wall,mergeStat
    driver-class-name: com.mysql.jdbc.Driver
    # 使用druid数据源
    type: com.alibaba.druid.pool.DruidDataSource
    mybatis-plus:
    mapper-locations: classpath:mapping/*.xml
    typeAliasesPackage: com.insert.sql.model
    global-config:
    id-type: 2 #0:数据库ID自增 1:用户输入id 2:全局唯一id(IdWorker) 3:全局唯一ID(uuid)
    db-column-underline: false
    refresh-mapper: true
    configuration:
    map-underscore-to-camel-case: false
    cache-enabled: true #配置的缓存的全局开关
    lazyLoadingEnabled: true #延时加载的开关
    multipleResultSetsEnabled: true #开启的话,延时加载一个属性时会加载该对象全部属性,否则按需加载属性
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #打印sql语句,调试用
    3.接下来就是测试和使用了
    controller层
    @RequestMapping("/getOne")
    public Page getOne(Integer pageNo) {
    Page page = insertService.getOne(pageNo);
    return page;
    }
    service层
    @Override
    public Page getOne(Integer pageNo) {
    Page page = new Page(1, pageNo);
    List<Map> book1 = logs1Mapper.getOne(page, pageNo);
    return page.setRecords(book1);
    }
    dao层
    List<Map> getOne(Page page, @Param("pageNo") Integer pageNo);
    xml层
    <select id="getOne" resultType="java.util.Map">
    select * from logs1
    </select>
    4.接下来在postman测试可以返回我们的分页数据。可是你会发现返回的数据中total和page总是0,者显然是不对的。因为我们缺少分页插件配置。
    配置如下:
    @Configuration
    public class MybatisPlusConfig {
    /**
    * mybatis-plus分页插件
    */
    @Bean
    public PaginationInterceptor paginationInterceptor() {
    PaginationInterceptor page = new PaginationInterceptor();
    page.setDialectType("mysql");
    return page;
    }
    }
    5.再测一下吧,这就是我们想要的结果。因为这是我自己集成的,没问题








  • 相关阅读:
    简单了解Linux文件目录
    解决GitLab的Forbidden和Nginx启动失败
    浅谈apidoc的使用
    Linux安装apidoc
    DevExpress的GridControl的实时加载数据解决方案(取代分页)
    Devexpress使用经验1
    ajax下载文件
    var str = "1,21,".TrimEnd(',');
    MSSQ调优所需用的语句
    js中替换返回json中的空格为&nbsp;
  • 原文地址:https://www.cnblogs.com/guagua-join-1/p/9849344.html
Copyright © 2020-2023  润新知