首页 > 编程语言 >【Java】【SpringBoot】SpringBoot整合MybatisPlus(快速入门)

【Java】【SpringBoot】SpringBoot整合MybatisPlus(快速入门)

时间:2024-09-27 14:26:51浏览次数:8  
标签:COMMENT Java SpringBoot DEFAULT value private MybatisPlus NULL public

较早之前,写了SpringBoot整合Mybatis:https://www.cnblogs.com/luyj00436/p/16701894.html。这个数据库的链接有过时。Mybatis plus是mybatis的增强工具。对比Mybatis功能强大、易于使用。

对于复杂业务,需要连接多张表单,Mybatis plus不够灵活,隐藏了代码,也不能更好地调试;对于简单业务,小型团队,能够更快速的迭代上线。这里依据官网,简单的快速入门。

前提条件

  • 已安装Java的JDK
  • 已安装maven。并配置和建立Maven的本地仓库
  • 已安装IDEA开发工具
  • 可连接的数据库mysql

测试数据如下:

DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
    `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
    `username` varchar(50) DEFAULT NULL COMMENT '用户名',
    `password` varchar(50) DEFAULT NULL COMMENT '密码',
    `name` varchar(50) DEFAULT NULL COMMENT '姓名',
    `age` int DEFAULT NULL COMMENT '年龄',
    `email` varchar(50) DEFAULT NULL COMMENT '邮箱',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
insert  into `user`(`id`,`username`,`password`,`name`,`age`,`email`) values (1,'张三','123456',NULL,NULL,NULL),(2,'李四','123456',NULL,NULL,NULL)

项目依赖

Springboot2 添加项目依赖

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.5.7</version>
</dependency>

如果项目为SpringBoot3,则添加如下项目依赖:

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-spring-boot3-starter</artifactId>
    <version>3.5.7</version>
</dependency>

数据库配置

在application中添加数据库配置

 1 # DataSource Config
 2 spring:
 3   datasource:
 4     driver-class-name: org.h2.Driver
 5     username: root
 6     password: test
 7   sql:
 8     init:
 9       schema-locations: classpath:db/schema-h2.sql
10       data-locations: classpath:db/data-h2.sql

 一般来说,扫描文件应该配置在配置文件中。这里,为了快速入门,直接在启动项目中添加@MapperScan注解。

1 @SpringBootApplication
2 @MapperScan("com.example.demo1.mapper")
3 public class DemoApplication {
4 
5     public static void main(String[] args) {
6         SpringApplication.run(DemoApplication.class, args);
7     }
8 
9 }

添加实体类

@TableName(value ="user")
@Data
public class User implements Serializable {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    /**
     * 用户名
     */
    @TableField(value = "username")
    private String username;

    /**
     * 密码
     */
    @TableField(value = "password")
    private String password;

    /**
     * 姓名
     */
    @TableField(value = "name")
    private String name;

    /**
     * 年龄
     */
    @TableField(value = "age")
    private Integer age;

    /**
     * 邮箱
     */
    @TableField(value = "email")
    private String email;
    
}

和Mapper方法

public interface UserMapper extends BaseMapper<User> {

}

添加测试

@SpringBootTest
public class SampleTest {

    @Autowired
    private UserMapper userMapper;

    @Test
    public void testSelect() {
        System.out.println(("----- selectAll method test ------"));
        List<User> userList = userMapper.selectList(null);
        Assert.isTrue(5 == userList.size(), "");
        userList.forEach(System.out::println);
    }

}

 

标签:COMMENT,Java,SpringBoot,DEFAULT,value,private,MybatisPlus,NULL,public
From: https://www.cnblogs.com/luyj00436/p/18434991

相关文章

  • 基于Java的学生档案管理系统
    基于springboot+vue实现的学生档案管理系统 (源码+L文+ppt)4-065  第4章系统设计   4.1总体功能设计学生档案管理系统的总体功能设计包括学生信息管理、课程管理、教师信息管理、成绩管理和系统配置管理。系统将提供用户友好的界面,支持学生信息的录入、查询和......
  • springboot在线教学平台
    基于springboot+vue实现的在线教学平台 (源码+L文+ppt)4-069 4.1系统结构设计  这些功能可以充分满足在线教学平台的需求。此系统功能较为全面如下图系统功能结构如图4-1所示。        图4-1功能结构图         4.2系统功能模块设计......
  • 【Java】【Idea】MyBatisPlusX 的使用
    1.安装MybatisPlusX插件 2.连接数据库 3.右击,选择“MybatisX-Generator”。 4.生成设置。  ......
  • 基于Java的学生档案管理系统
     基于springboot+vue实现的学生档案管理系统 (源码+L文+ppt)4-065  第4章系统设计   4.1总体功能设计学生档案管理系统的总体功能设计包括学生信息管理、课程管理、教师信息管理、成绩管理和系统配置管理。系统将提供用户友好的界面,支持学生信息的录入、查询......
  • springboot在线教学平台
     基于springboot+vue实现的在线教学平台 (源码+L文+ppt)4-069 4.1系统结构设计  这些功能可以充分满足在线教学平台的需求。此系统功能较为全面如下图系统功能结构如图4-1所示。        图4-1功能结构图         4.2系统功能模块设......
  • 基于Java的学生档案管理系统
     基于springboot+vue实现的学生档案管理系统 (源码+L文+ppt)4-065  第4章系统设计   4.1总体功能设计学生档案管理系统的总体功能设计包括学生信息管理、课程管理、教师信息管理、成绩管理和系统配置管理。系统将提供用户友好的界面,支持学生信息的录入、查询......
  • springboot在线教学平台
     基于springboot+vue实现的在线教学平台 (源码+L文+ppt)4-069 4.1系统结构设计  这些功能可以充分满足在线教学平台的需求。此系统功能较为全面如下图系统功能结构如图4-1所示。        图4-1功能结构图         4.2系统功能模块设......
  • 基于SpringBoot 应用Stream流+递归 实现多级分类
    SpringBoot->Stream流实现步骤:先查询所有级联的数据,然后通过Java8 Stream 流来比较和判断,最终生成有顺序的级联数据实体类:@DatapublicclassAddr{/***主键id*/privateLongaddrId;/***名称*/privateStringaddrNam......
  • 基于Java的学生档案管理系统
     基于springboot+vue实现的学生档案管理系统 (源码+L文+ppt)4-065  第4章系统设计   4.1总体功能设计学生档案管理系统的总体功能设计包括学生信息管理、课程管理、教师信息管理、成绩管理和系统配置管理。系统将提供用户友好的界面,支持学生信息的录入、查询......
  • springboot在线教学平台
     基于springboot+vue实现的在线教学平台 (源码+L文+ppt)4-069 4.1系统结构设计  这些功能可以充分满足在线教学平台的需求。此系统功能较为全面如下图系统功能结构如图4-1所示。        图4-1功能结构图         4.2系统功能模块设......