Springboot整合Mybatisplus的增删查改

目录

1.创建一个新模块

2.引入相关依赖

3.项目结构

4.用户实体类

5.在项目的配置文件中,配置MySQL数据库的连接信息

6.dao层接口

7.service类

8.controller类提供相应的接口访问数据库操作


  Mybatis-Plus:对Mybatis进行了增强,它封装了基本的增删改查操作,使我们自己不需要再去写很多重复的代码,大大解放了生产力!

1.创建一个新模块

      

2.引入相关依赖

        1.导入mybatis-plus的相关依赖包,数据库驱动

<!--		mybatis plus依赖-->
		<dependency>
			<groupId>com.baomidou</groupId>
			<artifactId>mybatis-plus-boot-starter</artifactId>
			<version>3.5.3.1</version>
		</dependency>

<!--		数据库驱动-->
		<dependency>
			<groupId>com.mysql</groupId>
			<artifactId>mysql-connector-j</artifactId>
			<scope>runtime</scope>
		</dependency>

3.项目结构

4.用户实体类

package com.example.demo.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
@Data
public class User {
    @TableId(type = IdType.AUTO)   //id自增
    private int id;
    private String name;
}
  • @Data 注在类上,提供类的get、set、equals、hashCode、canEqual、toString方法,提高代码的简洁
  • @TableId 用于指定实体类的某个属性为对应的主键,并设为自增

5.在项目的配置文件中,配置MySQL数据库的连接信息

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/hhhhh?useUnicode=true&characterEncoding=UTF-8
    username: root
    password: 123455
    driver-class-name: com.mysql.cj.jdbc.Driver
  • 数据库地址 localhost:3306/hhhhh, hhhhh就是数据库名称
  • 数据库用户名 spring.datasource.username
  • 数据库密码 spring.datasource.password

       新建数据库,注意数据库名要与配置文件里的数据库名对应

        在数据库中新建一个数据表,并插入若干数据

-- 创建user表
CREATE TABLE USER(
    id INT(12) AUTO_INCREMENT PRIMARY KEY COMMENT '主键',
    NAME VARCHAR(100) COMMENT '姓名'
) ENGINE=INNODB;
-- 插入若干数据
INSERT INTO USER(NAME) VALUES ('张三');
INSERT INTO USER(NAME) VALUES ('张小三');
INSERT INTO USER(NAME) VALUES ('jjj');
INSERT INTO USER(NAME) VALUES ('张大聪明');

6.dao层接口

@Mapper 这个注解一般使用在Dao层接口上,相当于一个mapper.xml文件,它的作用就是将接口生成一个动态助理类。加入了@Mapper注解,就是为了不再写mapper映射文件。这个注解就是用来映射mapper.xml文件的

使用@Mapper后,不需要在spring配置中设置扫描地址,通过mapper.xml里面的namepace属性对应相关的mapper类,spring将动态的生成Bean后注入到Service中

        BaseMapper 类封装了dao层基本的增删改查操作

7.service类

        添加Service注解标识为服务类,可以让spring自动识别并进行管理,使其可以通过依赖注入的方式在其他类使用该服务类

8.controller类提供相应的接口访问数据库操作

        @RequestMapping表示共享映射,如果没有指定请求方式,将接收GET、POST、HEAD、OPTIONS、PUT、PATCH、DELETE、TRACE、CONNECT所有HTTP请求方式的映射逐渐。@GetMapping、@PostMapping、@PutMapping、@DeleteMapping、@PatchMapping 都是HTTP方法特有的快捷方式@RequestMapping的变体,分别对应具体的HTTP请求方式的映射注解。

        Autowired注解使用服务类方法完成数据库操作

package com.example.demo.controller;

import com.example.demo.entity.User;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/user")
public class UserController {
    @Autowired
    UserService service;//持久化注入
    public UserController(UserService service){
        this.service=service;
    }
    //用户列表
    @GetMapping("/list")
    public List<User> list(){
        return service.list();
    }
    
    //根据id删除用户数据
    @DeleteMapping("/delete/{id}")
    public boolean delete(@PathVariable("id") Integer id){
        return service.removeById(id);
    }
    //根据id查找用户数据
    @GetMapping("/edit/{id}")
    public User edit(@PathVariable("id") Integer id){
        return service.getById(id);

    }
    //新增用户数据
    @PostMapping("/inset")
    public boolean insert(@RequestBody User user){
        return service.save(user);
    }
    
    //修改用户数据
    @PostMapping("/update")
    public boolean update(@RequestBody User user){
        return service.updateById(user);
    }
}

结语:增删改查接口,基本上不需要自己写sql,直接调用Mybatis-Plus封装好的接口

Mybatis属于半配置型的数据持久化框架,JPA是直接封装了所有的SQL操作,相对于JPA来说Mybatis更灵活,可以自定义SQL。同时Mybatis-Plus又为你封装了常用的增删改查操作,这样既可以在特殊情况下自定义SQL,又避免了写大量重复的增删改查。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Spring Boot集成MyBatis Plus可以非常简便地实现增删查改操作。下面是一个简单的示例: 1. 引入相关依赖: ```xml <!-- Spring Boot --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- MyBatis Plus --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>最新版本</version> </dependency> ``` 2. 配置数据库连接: 在`application.properties`或`application.yml`中配置数据库连接信息,例如: ```yaml spring.datasource.url=jdbc:mysql://localhost:3306/mydatabase spring.datasource.username=username spring.datasource.password=password spring.datasource.driver-class-name=com.mysql.jdbc.Driver ``` 3. 创建实体类: 创建与数据库表对应的实体类,并使用MyBatis Plus的注解进行字段映射。 4. 创建Mapper接口: 创建一个继承自`BaseMapper`的Mapper接口,该接口不需要实现任何方法,MyBatis Plus会根据命名规范自动实现CURD操作。 5. 编写Service层: 创建一个Service类,通过使用`@Autowired`注解注入Mapper接口,即可实现对数据库的增删查改操作。 下面是一个简单的示例代码: 实体类: ```java @Data public class User { private Long id; private String name; private Integer age; } ``` Mapper接口: ```java public interface UserMapper extends BaseMapper<User> { } ``` Service类: ```java @Service public class UserService { @Autowired private UserMapper userMapper; public List<User> getAllUsers() { return userMapper.selectList(null); } public User getUserById(Long id) { return userMapper.selectById(id); } public void addUser(User user) { userMapper.insert(user); } public void updateUser(User user) { userMapper.updateById(user); } public void deleteUser(Long id) { userMapper.deleteById(id); } } ``` 这样,你就可以在Controller层调用Service层的方法来完成增删查改操作了。 这只是一个简单的示例,实际应用可能还需要处理异常、分页查询等其他操作。希望对你有所帮助!如果有任何疑问,请随时提问。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值