基于SpringBoot的MybatisPlus简明教程
Posted 算法与编程之美
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于SpringBoot的MybatisPlus简明教程相关的知识,希望对你有一定的参考价值。
引言
互联网上已经存在了海量的基于SpringBoot的MybatisPlus教程,为什么还要创作本系列文章?
主要原因在于互联网上现有的关于Mybatis Plus的单篇文章关注的内容太多,过于复杂,不利于初学者快速入门,抓住问题的核心。
目标
本文的目标是:
- 快速搭建基于SpringBoot的Mybatis-Plus非WEB的命令行开发环境;
- 能够查询并显示数据库中用户表的所有数据;
方法
- 创建数据库和项目所需表;
-- ----------------------------
-- Table structure for t_users
-- ----------------------------
DROP TABLE IF EXISTS `t_users`;
CREATE TABLE `t_users` (
`id` int NOT NULL AUTO_INCREMENT,
`username` varchar(255) DEFAULT NULL,
`password` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
-- ----------------------------
-- Records of t_users
-- ----------------------------
INSERT INTO `t_users` VALUES ('1', 'abc', '123');
- Idea中创建Maven项目;
- pom.xml文件中添加项目所需依赖,并刷新Maven依赖;
<dependencies>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
</dependencies>
- 创建数据库表对应的实体类;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
@Data
@TableName("t_users")
public class UserEntity
private Long id;
private String username;
private String password;
- 创建实体类对应的mapper类;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import edu.sctu.demo.mybatis.plus.model.UserEntity;
public interface UserMapper extends BaseMapper<UserEntity>
- 进行MybatisPlus相关配置;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Configuration;
@Configuration
@MapperScan("edu.sctu.demo.mybatis.plus.mapper")
public class MybatisPlusConfig
此处只需要配置mapper类的包路径即可;
- 编写SpringBoot启动类,并进行测试;
@SpringBootApplication
public class Application implements CommandLineRunner
@Autowired(required = false)
private UserMapper userMapper;
public static void main(String[] args)
SpringApplication.run(Application.class, args);
@Override
public void run(String... args) throws Exception
System.out.println(userMapper.selectList(null));
- 测试结果如下所示:
. ____ _ __ _ _
/\\\\ / ___'_ __ _ _(_)_ __ __ _ \\ \\ \\ \\
( ( )\\___ | '_ | '_| | '_ \\/ _` | \\ \\ \\ \\
\\\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.6.1)
2021-12-23 17:18:19.196 INFO 5996 --- [ main] edu.sctu.demo.mybatis.plus.Application : Starting Application using Java 1.8.0_131 on WIN-K5EIUKCMVNI with PID 5996 (E:\\123\\sctu-tools-java\\mybatis-plus-demo\\target\\classes started by Administrator in E:\\123\\sctu-tools-java)
2021-12-23 17:18:19.198 INFO 5996 --- [ main] edu.sctu.demo.mybatis.plus.Application : No active profile set, falling back to default profiles: default
_ _ |_ _ _|_. ___ _ | _
| | |\\/|_)(_| | |_\\ |_)||_|_\\
/ |
3.4.3.4
2021-12-23 17:18:20.238 INFO 5996 --- [ main] edu.sctu.demo.mybatis.plus.Application : Started Application in 1.447 seconds (JVM running for 1.977)
2021-12-23 17:18:20.267 INFO 5996 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...
2021-12-23 17:18:20.594 INFO 5996 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.
[UserEntity(id=1, username=abc, password=123)]
2021-12-23 17:18:20.638 INFO 5996 --- [ionShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated...
2021-12-23 17:18:20.640 INFO 5996 --- [ionShutdownHook] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed.
Process finished with exit code 0
结语
本文展示了SpringBoot整合MybatisPlus所需要的最少代码,可以帮助初学者快速入门。
以上是关于基于SpringBoot的MybatisPlus简明教程的主要内容,如果未能解决你的问题,请参考以下文章
基于SpringBoot+MyBatisPlus实现一套后台开发框架
基于Springboot+MybatisPlus的外卖项目瑞吉外卖Day3
基于Springboot和MybatisPlus的外卖项目 瑞吉外卖Day4