Spring boot 集合 tk.mybatis

mybatis mapper官网

https://github.com/abel533/Mapper/wiki

导包

<!--springboot集合mybatis-->
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>2.1.4</version>
</dependency>
<!--springboot集合mybatis mapper-->
<dependency>
    <groupId>tk.mybatis</groupId>
    <artifactId>mapper-spring-boot-starter</artifactId>
    <version>2.1.5</version>
</dependency>
<!--分页 pagehelper-->
<dependency>
    <groupId>com.github.pagehelper</groupId>
    <artifactId>pagehelper-spring-boot-starter</artifactId>
    <version>1.3.0</version>
</dependency>
<!-- 阿里巴巴数据源 -->
<dependency>
     <groupId>com.alibaba</groupId>
     <artifactId>druid-spring-boot-starter</artifactId>
     <version>1.1.10</version>
</dependency>

yml配置(这里忽略了数据源的配置)

# mybatis
mybatis:
  mapper-locations: classpath*:mapper/*Mapper.xml # mapper.xml文件所在位置
  type-aliases-package: cn.sjk.web.webdemo.model         #对应实体类的包名
  configuration:
     map-underscore-to-camel-case: true  #配置驼峰命名转换 在进行sql查询和初始化实体时mybatis会为我们自动转化

#pagehelper 分页配置文件
pagehelper:
  #指定分页插件使用哪种方言
  helper-dialect: sqlserver
  #当该参数设置为 true 时,pageNum<=0 时会查询第一页
  reasonable: true
  #支持通过 Mapper 接口参数来传递分页参数,分页插件会从查询方法的参数值中,自动根据params 配    置的字段中取值,查找到合适的值时就会自动分页
  support-methods-arguments: true
  #增加了该参数来配置参数映射,用于从对象中根据属性名取值
  params: countSql

#mybatis-mapper
mapper:
    mappers:
        - tk.mybatis.springboot.util.MyMapper
    #insertSelective 和 updateByPrimaryKeySelective 中,是否判断字符串类型 !=''。
    not-empty: false
    #取回主键的方式
    identity: MYSQL

mybatis-mapper配置:https://github.com/abel533/Mapper/wiki/3.config

pagehelper配置与使用:

PageHelper.startPage方法重要提示

只有紧跟在PageHelper.startPage方法后的第一个Mybatis的查询(Select)方法会被分页。

主要使用方法:

//第二种,Mapper接口方式的调用,推荐这种使用方式。
PageHelper.startPage(1, 10);
List<User> list = userMapper.selectIf(1);

//第三种,Mapper接口方式的调用,推荐这种使用方式。
PageHelper.offsetPage(1, 10);
List<User> list = userMapper.selectIf(1);

//第四种,参数方法调用
//存在以下 Mapper 接口方法,你不需要在 xml 处理后两个参数
public interface CountryMapper {
    List<User> selectByPageNumSize(
            @Param("user") User user,
            @Param("pageNum") int pageNum, 
            @Param("pageSize") int pageSize);
}
//配置supportMethodsArguments=true
//在代码中直接调用:
List<User> list = userMapper.selectByPageNumSize(user, 1, 10);
//第五种,参数对象
//如果 pageNum 和 pageSize 存在于 User 对象中,只要参数有值,也会被分页
//有如下 User 对象
public class User {
    //其他fields
    //下面两个参数名和 params 配置的名字一致
    private Integer pageNum;
    private Integer pageSize;
}
//存在以下 Mapper 接口方法,你不需要在 xml 处理后两个参数
public interface CountryMapper {
    List<User> selectByPageNumSize(User user);
}
//当 user 中的 pageNum!= null && pageSize!= null 时,会自动分页
List<User> list = userMapper.selectByPageNumSize(user);

其他调用方法看文档:

https://github.com/pagehelper/Mybatis-PageHelper/blob/master/wikis/zh/HowToUse.md 

https://github.com/pagehelper/pagehelper-spring-boot

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值