MyBatis-plus初步学习

MyBatis-plus初步学习

如何进行基础配置?

看这里

分页查询基础配置

在这里插入图片描述

import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.transaction.annotation.EnableTransactionManagement;

@EnableTransactionManagement
@Configuration
@MapperScan("com.practice.practice.mapper")
public class MybatisPlusConfig {
    @Bean
    public PaginationInterceptor paginationInterceptor(){
        PaginationInterceptor interceptor=new PaginationInterceptor();
        return interceptor;
    }
}

对于某个表的controller该如何写:

package com.practice.practice.controller;


import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.practice.practice.entity.MyFruit;
import com.practice.practice.service.MyFruitService;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.ResponseBody;

import java.nio.charset.StandardCharsets;
import java.util.List;

/**
 * <p>
 *  前端控制器
 * </p>
 *
 * @author admin
 * @since 2021-07-31
 */
@Controller
@ResponseBody
@RequestMapping("/myFruit")
public class MyFruitController {
    @Autowired
    private MyFruitService myFruitService;
    //返回全部数据
    @GetMapping("/list")
    public List<MyFruit> list(){
        List<MyFruit> myFruits=this.myFruitService.list();
        //System.out.println(myFruits);
        return myFruits;
    }
    @GetMapping("/getEq")
    public List<MyFruit> getEq(){
        QueryWrapper<MyFruit> queryWrapper=new QueryWrapper<>();
        //等值查询,也可以是大于或者小于
        queryWrapper.eq("age",20);

        //模糊查询
//        queryWrapper.likeLeft("name","s");
        //left是以字符s结尾的
//        queryWrapper.like("name","s");
        //包含s的
        //queryWrapper.likeRight("name","s");
        //以s开头的
        return this.myFruitService.list(queryWrapper);
    }
    @GetMapping("/getOne/{id}")
    public MyFruit getOne(@PathVariable("id") Integer id){
        return this.myFruitService.getById(id);
    }

    @GetMapping("/removeOne/{id}")
    public void removeOne(@PathVariable("id") Integer id){

        this.myFruitService.removeById(id);
    }
    //插入
    @GetMapping("/insertOne/test")
    public void insertOne(){
        MyFruit myFruit=new MyFruit();
        myFruit.setAge(4);
        myFruit.setName("wocao".getBytes(StandardCharsets.UTF_8));
        myFruit.setSize(700L);
        System.out.println(myFruit);
        this.myFruitService.save(myFruit);
    }
    //修改单个

    @GetMapping("/updataOne/test")
    public void updataOne(){
        MyFruit myFruit=this.myFruitService.getById(3);
        myFruit.setSize(999L);
        this.myFruitService.saveOrUpdate(myFruit);
    }
    //修改多个
    @GetMapping("/updateList/test")
    public void updateList(){
        QueryWrapper<MyFruit> queryWrapper=new QueryWrapper<>();
        queryWrapper.eq("size",700L);
        MyFruit myFruit=this.myFruitService.getById(3);
        myFruit.setSize(10000L);
        this.myFruitService.saveOrUpdate(myFruit,queryWrapper);
    }
    //分页查询,不能有表连接
    @GetMapping("/findPage/test")
    public void findPage(){
        //第一个参数是当前页数,第二个是每页的数据的条数
        IPage<MyFruit> iPage=new Page<>(1,2);
        IPage<MyFruit> fruitIPage=this
                .myFruitService.page(iPage,null);
        Long tot=fruitIPage.getTotal();
        System.out.println("tot="+tot);
        System.out.println(fruitIPage.getRecords());
    }

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值