springboot 集成MP(MyBatis-Plus)学习记录

1.首先maven 引入

  <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.1.2</version>
        </dependency>

2.(略去DataSouce 配置 自行解决)开启SQL打印

# 配置slq打印日志
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
3.书写Mapper 空接口(扫描注意了)
@Component
public interface UserMapper extends BaseMapper<User> {


}
4. service 调用:
package com.example.mplus.mps;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class UseService {
    @Autowired
    private UserMapper userMapper;

    private Logger logger = LoggerFactory.getLogger(UseService.class);

    public List<User> getAll() {
        return userMapper.selectList(null);
    }

    public int save(User user) {
        return userMapper.insert(user);
    }

    public int update(User user) {

        return userMapper.updateById(user);
    }

    public int update1(int id, String name) {
        UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
        User user = new User();
        user.setUsername(name);
        //修改的条件
        updateWrapper.eq("id", id);
        return userMapper.update(user, updateWrapper);
    }

    public int deleteById(int id) {
        return userMapper.deleteById(id);
    }

    public int deletewhithIf(int startId, int endId) {
        QueryWrapper<User> wrapper = new QueryWrapper<>();
        wrapper.gt("id", startId);
        wrapper.le("id", endId);
        logger.info("sql", wrapper.getSqlSegment());

        return userMapper.delete(wrapper);

    }

    public List<User> getAllByPage(int index, int pageSize) {
        if (index == 0) {
            index = 1;
        }
        Page<User> page = new Page<>(index, pageSize);
        QueryWrapper<User> quire = new QueryWrapper<>();
        quire.between("id", "1013", "1020");
        logger.info("sql:" + quire.getSqlSegment());
        userMapper.selectPage(page, quire);
        List<User> records = page.getRecords();
        return records;
    }
}

5.调用

package com.example.mplus.mps;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
public class UserControl {
    @Autowired
    private UseService useService;

    private Logger logger = LoggerFactory.getLogger(UserControl.class);

    @RequestMapping(value = "/select")
    public List<User> getAll() {
        logger.info("查询个数:" + useService.getAll().size());
        return useService.getAll();
    }


    @RequestMapping(value = "/select/{index}/{pageSize}")
    public List<User> getAllByPage(@PathVariable int index, @PathVariable int pageSize) {
        int size = useService.getAllByPage(index, pageSize).size();
        logger.info("查询个数:" + size);
        return useService.getAllByPage(index, pageSize);
    }

    @RequestMapping(value = "/add/{username}/{address}/{pwd}/{id}")
    public ResponseEntity add(@PathVariable String username, @PathVariable String address, @PathVariable String pwd, @PathVariable int id) {
        ResponseBean responseBean = new ResponseBean();
        User user = new User();
        user.setId(id);
        user.setAddress(address);
        user.setPwd(pwd);
        user.setUsername(username);
        int updateCount = useService.save(user);
        if (updateCount > 0) {
            responseBean.setCode(200);
            responseBean.setMsg("保存成功");
            responseBean.setUser(user);
        } else {
            responseBean.setCode(201);
            responseBean.setMsg("保存不成功");
        }
        logger.info("添加个数:" + updateCount);
        return ResponseEntity.ok(responseBean);
    }


    @RequestMapping(value = "/update/{id}/{name}/{pwd}")
    public ResponseEntity update(@PathVariable int id, @PathVariable String name, @PathVariable(required = false) String pwd) {
        ResponseBean responseBean = new ResponseBean();
        User user = new User();
        user.setId(id);
        user.setUsername(name);
        if (!StringUtils.isEmpty(pwd)) {
            user.setPwd(pwd);
        }
        int updateCount = useService.update(user);
        if (updateCount > 0) {
            responseBean.setCode(200);
            responseBean.setMsg("修改成功");
            responseBean.setUser(user);
        } else {
            responseBean.setCode(201);
            responseBean.setMsg("修改不成功");
        }
        logger.info("修改个数:" + updateCount);
        return ResponseEntity.ok(responseBean);
    }

    @RequestMapping(value = "/delete/{id}")
    public ResponseEntity delteById(@PathVariable int id) {
        ResponseBean responseBean = new ResponseBean();


        int updateCount = useService.deleteById(id);
        if (updateCount > 0) {
            responseBean.setCode(200);
            responseBean.setMsg("删除成功");

        } else {
            responseBean.setCode(201);
            responseBean.setMsg("删除不成功");
        }
        logger.info("删除个数:" + updateCount);
        return ResponseEntity.ok(responseBean);
    }

    @RequestMapping(value = "/delete1/{indexId}/{endId}")
    public ResponseEntity delteWithif(@PathVariable int indexId, @PathVariable int endId) {
        ResponseBean responseBean = new ResponseBean();
        int updateCount = useService.deletewhithIf(indexId, endId);
        if (updateCount > 0) {
            responseBean.setCode(200);
            responseBean.setMsg("删除成功");

        } else {
            responseBean.setCode(201);
            responseBean.setMsg("删除不成功");
        }
        logger.info("删除个数:" + updateCount);
        return ResponseEntity.ok(responseBean);
    }


    @RequestMapping(value = "/update1/{id}/{name}")
    public ResponseEntity update1(@PathVariable String name, @PathVariable int id) {
        ResponseBean responseBean = new ResponseBean();
        int updateCount = useService.update1(id, name);
        if (updateCount > 0) {
            responseBean.setCode(200);
            responseBean.setMsg("修改成功");

        } else {
            responseBean.setCode(201);
            responseBean.setMsg("修改不成功");
        }
        logger.info("修改个数:" + updateCount);
        return ResponseEntity.ok(responseBean);
    }


}

5.分页插件注入 启动类或者Config 配置类自己懂得

  @Bean
    public PaginationInterceptor paginationInterceptor() {
        return new PaginationInterceptor();
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

江南一舟110

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值