Spring整合Mybatis的BaseMapper与分页插件

通用mapper和分页插件

在原来的基础上添加pom依赖

<!-- https://mvnrepository.com/artifact/tk.mybatis/mapper -->
    <dependency>
      <groupId>tk.mybatis</groupId>
      <artifactId>mapper</artifactId>
      <version>4.1.5</version>
    </dependency>

将spring-bean.xml的mybatis配置进行修改

原先的配置

    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="com.study.wjm.mapper"/>
        <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
    </bean>

修改后的配置

	<bean class="tk.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="com.study.wjm.mapper"/>
        <property name="properties">
            <value>
                mappers=tk.mybatis.mapper.common.Mapper
            </value>
        </property>
        <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
    </bean>

通用mapper配置完成,然后配置分页插件

添加依赖

<!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper -->
    <dependency>
      <groupId>com.github.pagehelper</groupId>
      <artifactId>pagehelper</artifactId>
      <version>5.1.10</version>
    </dependency>

在mybatis-config中进行配置

    <plugins>
        <!-- 配置分页插件  -->
        <plugin interceptor="com.github.pagehelper.PageInterceptor">
        </plugin>
    </plugins>

分页功能简单的使用

        //开始进行分页,页数和页数大小
        PageHelper.startPage(pageNum,pageSize);

        //构建查询条件
        Example example = new Example(Goods.class);
        Example.Criteria criteria = example.createCriteria();

        criteria.andLike("name","%"+name+"%");

        //进行条件查询
        List<Goods> list = goodsMapper.selectByExample(example);

        //将查询的数据放入Page Info中进行分页
        PageInfo<Goods> p = new PageInfo<>(list);
        //获取list数据
        List<Goods> goodsList = p.getList();
        //获取总数
        long total = p.getTotal();

        HashMap<String, Object> map = new HashMap<>();
        map.put("data", goodsList);
        map.put("total",total);

        redisTemplate.opsForHash().put("goodMap",rHashK,map);
        redisTemplate.expire("goodMap", 12, TimeUnit.HOURS);

        return map;
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值