springboot+mybatisplus的增删改查操作(评论区见源码地址)

此demo的项目结构

用idea创建好一个springboot的基础项目之后,在pom.xml文件中加入以下依赖,

        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.0</version>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

安装完依赖之后,配置application.properties

#修改tomcat端口
server.port=8081
#设定Url的地址路径
#server.servlet.context-path=/springboot
#设定前缀
#spring.mvc.view.prefix=/
#设定后缀
#spring.mvc.view.suffix=.jsp
#连接字符串Mysql
spring.datasource.url=jdbc:mysql://localhost:3306/xiaozhoucms?serverTimezone=UTC
#mysql驱动
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#mysql用户名
spring.datasource.username=root
#mysql密码
spring.datasource.password=123456789
#阿里巴巴数据库连接池
#spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
#扫描mapper下面的所有.xmlwen件
mybatis.mapper-locations=classpath:mapper/*.xml
#扫描entity下所有实体
mybatis.type-aliases-package=com.example.demo.entity

#SpringBoot打印MyBatis sql日志输出
logging.level.com.example.cmscrud.demo.mapper=debug

在idea上连接上本地数据库,如下图,图中只用到了users这个表

在本地数据库创建数据库并且创建一个users的表格,内容如下。

然后按照结构创建全部的包名称,controller、entity、mapper、service。

Application文件

package com.example.cmscrud.demo;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
@MapperScan("com.example.cmscrud.demo.mapper")
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}

controller包下的UsersController文件

package com.example.cmscrud.demo.controller;

import com.example.cmscrud.demo.entity.Users;
import com.example.cmscrud.demo.service.impl.UsersServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.DigestUtils;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
public class UsersController {
    @Autowired
    private UsersServiceImpl usersService;
    /*
    get请求获取用户列表
     */
    @RequestMapping("/users")
    @ResponseBody
    public List<Users> getUser(){
        return  usersService.getAllUser(1,10);
    }
    /*
    post请求添加用户
     */
    @RequestMapping(value = "/postuser",method = RequestMethod.POST)
    @ResponseBody
    public int insertUser(Users users){
        System.out.println(users);
        String md5Password=DigestUtils.md5DigestAsHex(users.getPassword().getBytes());
        System.out.println(md5Password);
        users.setPassword(md5Password);
        return usersService.insertUser(users);
    }
    /*
    delete请求删除用户数据
     */
    @RequestMapping(value = "/deleteuser",method = RequestMethod.DELETE)
    public int deleteUser(int id){
        System.out.println(id);
        return usersService.deleteUser(id);
    }

    /*
    update请求修改用户数据
     */
    @RequestMapping(value = "/updateuser",method = RequestMethod.POST)
    public int updateUser(Users users){
        return usersService.updateUser(users);
    }
}

entity包下的Users文件

package com.example.cmscrud.demo.entity;

import lombok.Data;

@Data
public class Users {

  private long id;
  private String username;
  private String password;
  private java.sql.Timestamp createdAt;
  private java.sql.Timestamp updatedAt;


  public long getId() {
    return id;
  }

  public void setId(long id) {
    this.id = id;
  }


  public String getUsername() {
    return username;
  }

  public void setUsername(String username) {
    this.username = username;
  }


  public String getPassword() {
    return password;
  }

  public void setPassword(String password) {
    this.password = password;
  }


  public java.sql.Timestamp getCreatedAt() {
    return createdAt;
  }

  public void setCreatedAt(java.sql.Timestamp createdAt) {
    this.createdAt = createdAt;
  }


  public java.sql.Timestamp getUpdatedAt() {
    return updatedAt;
  }

  public void setUpdatedAt(java.sql.Timestamp updatedAt) {
    this.updatedAt = updatedAt;
  }

  @Override
  public String toString() {
    return "Users{" +
            "id=" + id +
            ", username='" + username + '\'' +
            ", password='" + password + '\'' +
            ", createdAt=" + createdAt +
            ", updatedAt=" + updatedAt +
            '}';
  }
}

mapper包下的UsersMapper文件

package com.example.cmscrud.demo.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.cmscrud.demo.entity.Users;
import org.springframework.stereotype.Component;

@Component
public interface UsersMapper extends BaseMapper<Users> {
}

service包下的UserService文件

package com.example.cmscrud.demo.service;

import com.example.cmscrud.demo.entity.Users;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public interface UsersService {
    public List<Users> getAllUser(Integer page,Integer limit);
    public int insertUser(Users users);
    public int deleteUser(int id);
    public int updateUser(Users users);
}

service包内impl包里的UserServiceImpl文件

package com.example.cmscrud.demo.service.impl;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.example.cmscrud.demo.entity.Users;
import com.example.cmscrud.demo.mapper.UsersMapper;
import com.example.cmscrud.demo.service.UsersService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class UsersServiceImpl implements UsersService {
    @Autowired
    private UsersMapper usersMapper;
    @Override
    public List<Users> getAllUser(Integer page, Integer limit) {
        IPage<Users> usersIPage=new Page<>(page,limit);
        IPage<Users> result=usersMapper.selectPage(usersIPage,null);
        List<Users> users=result.getRecords();
        return users;
    }

    @Override
    public int insertUser(Users users) {
//        System.out.println(users);
        return usersMapper.insert(users);
    }

    @Override
    public int deleteUser(int id) {
        return usersMapper.deleteById(id);
    }

    @Override
    public int updateUser(Users users) {
        return usersMapper.updateById(users);
    }
}

最后运行,并用postman进行测试

 到这里就完成了springboot+mybatis的简单crud操作了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值