zoukankan      html  css  js  c++  java
  • 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下文件属性(drwxr-xr-x)详解以及(-rwxrwxrwx=777)(转)
    Linux中chown和chmod的区别和用法(转)
    以root用户身份在jenkins中运行shell命令
    Java中Properties配置文件读取
    Java分布式服务框架Dubbo初探(待实践)
    Servlet3.0新特性
    Java中System.getProperty()的参数
    Java获取路径的方法分析详解(Application/Web)
    Java中的JAR/EAR/WAR包的文件夹结构说明(转)
    JAR包中的MANIFEST.MF文件详解以及编写规范
  • 原文地址:https://www.cnblogs.com/guagua-join-1/p/9849344.html
Copyright © 2011-2022 走看看