返回顶部
首页 > 资讯 > 后端开发 > Python >零基础搭建boot+MybatisPlus的详细教程
  • 590
分享到

零基础搭建boot+MybatisPlus的详细教程

2024-04-02 19:04:59 590人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录1.准备工作1.1 创建数据库表1.2 创建boot项目1.3 创建实体类(映射数据库表)2.使用mybatisPlus(操作数据库)2.1 添加mybatisPlus依赖2.2

1.准备工作

1.1 创建数据库表

创建表

CREATE  TABLE `login`(
   `id`  INT(4)  primary key auto_increment,
   `login_id`  VARCHAR(50)  UNIQUE,
   `city` VARCHAR(50)  DEFAULT  '富平',
   `passWord`  VARCHAR(50)
)

可视化工具中添加数据(我不太会写sql)

1.2 创建boot项目

1.3 创建实体类(映射数据库表)

2.使用mybatisPlus(操作数据库)

2.1 添加mybatisPlus依赖

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.1.2</version>
</dependency>
<dependency>
    <groupId>Mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
</dependency>

2.2 配置数据库信息

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/test0314?characterEncoding=utf-8&serverTimezone=UTC
    username: root
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver

2.3 创建mapper接口

该接口中提供了常用的crud方法,我们只需要从容器中获取mapper操作数据即可

package com.hand.demo.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hand.demo.entity.User;


public interface UserMapper extends BaseMapper<User> {
}

2.4 配置mapper扫描

  • 在启动类中配置我们的mapper在哪个包
  • 两种方法:@Mapper注解(麻烦);@MapperScan(在主启动类上进行配置)
@SpringBootApplication
@MapperScan("com.hand.demo.mapper")
public class Demo0318Application {
    public static void main(String[] args) {
        SpringApplication.run(Demo0318Application.class, args);
    }
}

2.5 test

 <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <scope>test</scope>
        </dependency>

在test包下

package com.hand.demo;
import com.hand.demo.entity.User;
import com.hand.demo.mapper.UserMapper;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class Demo0318ApplicationTests {
    @Autowired
    private UserMapper userMapper;
    
    @Test
    public void testQueryAll() {
        List<User> userList = userMapper.selectList(null);
        System.out.println(userList);
    }
}

3. 常用设置

3.1 设置表映射规则

设置表前缀配置

3.2 主键生成策略(默认基于雪花算法)

 @TableId(type = IdType.AUTO)
    private Long id;

3.3 全局设置

mybatis-plus:
  global-config:
    db-config:
      table-prefix:
      id-type: auto

3.4 字段与列名的驼峰映射(默认开启)

mybatis-plus:
  global-config:
    db-config:
      table-prefix:
      id-type: auto
  configuration:
    map-underscore-to-camel-case: false  

3.5 日志设置

mybatis-plus:
  global-config:
    db-config:
      table-prefix:
      id-type: auto
  configuration:
    map-underscore-to-camel-case: false
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

4.基操

4.1 插入 insert()

4.2 删除 deleteXxx() map

4.3 更新 updateXxx()

5.Wrapper(条件构造器)

5.1

 Wrapper
           AbstractWrapper    
    QueryWrapper   UpdateWrapper 

QueryWrapper的select可以设置需要查询的列

6. service层使用

  • 不需要手动注入该泛型内的mapper
  • 如果需要别的mapper手动注入就行
package com.hand.demo.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hand.demo.entity.User;

public interface UserService extends IService<User> {
    
}
package com.hand.demo.service.Impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.hand.demo.entity.User;
import com.hand.demo.mapper.UserMapper;
import com.hand.demo.service.UserService;

@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
    
}
    @Autowired
    private UserService userService;

    @Test
    public void testService() {
        List<User> list = userService.list();
        System.out.println(list);
    }
  • 也有自己的批量操作等(batch)
  • 自定义方法(多表关联)

7. 代码生成器(未完待续)

  • 每个接口都在继承相同的BaseMapper,IService(代码冗余,繁琐)
  • MybatisPlus提供的代码生成器,一键生成mvc三层所有代码
  • 如何使用,引入下边的包
 <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.5.2</version>
        </dependency>
        <dependency>
            <groupId>org.freemarker</groupId>
            <artifactId>freemarker</artifactId>
        </dependency>

到此这篇关于零基础搭建boot+MybatisPlus的文章就介绍到这了,更多相关boot+MybatisPlus搭建内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 零基础搭建boot+MybatisPlus的详细教程

本文链接: https://lsjlt.com/news/143129.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作