手把手教你如何创建一个springboot+mybatisplus项目
1. 创建springboot项目
创建新项目:
创建Maven项目形式,或者按照创建Spring Initializr的形式
此处我们使用后者
类型Type选择Maven,Maven项目会自动创建一个Pom.xml文件
Java版本需和jdk版本保持一致
注意:这里Springboot版本选择3.0以下,2.x到3.0版本是一个大跨越
注意事项:
-
JDK、SDK、JAVA等组件的版本需要统一,不然可能导致项目启动失败
-
file encoding 文件编码格式需统一(一般是utf-8)
-
最好使用自己下载的maven(不使用自带的),在设置里进行maven配置
2. 依赖导入与基本工具配置(mysql、redis等)
打开pom.xml文件,导入一些基本依赖
<!-- spring-boot-starter-web -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>3.0.8</version>
</dependency>
<!-- com.mysql/mysql-connector-j -->
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
</dependency>
<!-- mybatis-plus-boot-starter -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.2</version>
</dependency>
<!-- mybatis-plus-generator -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.5.2</version>
</dependency>
<!-- freemarker -->
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
</dependency>
<!-- lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<!-- redis -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
<version>2.5.15<version>
</dependency>
<!--fastjso 常用依赖非必需-->
<dependency>
<groupId>com.alibaba.fastjson2</groupId>
<artifactId>fastjson2</artifactId>
<version>2.0.34<version>
</dependency>
需要注意的是:若出现版本不兼容问题,请尝试降低(更换)依赖版本(本项目使用2.x的springboot,可能与高版本依赖包不兼容)
官网:https://mvnrepository.com/
导入依赖成功后:
将application.properties文件改成.yml格式(便于开发,非必要),然后再配置此文件,添加以下代码:
#端口号
server:
port: 9999
spring:
datasource:
url: jdbc:mysql:///数据库名
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
redis:
port: 6379
host: localhost
#日志
logging:
level:
com.code: debug
#自动扫描实体类
mybatis-plus:
type-aliases-package: com.*.entity
3. mybatis-plus代码自动生成
官网:https://baomidou.com/pages/24112f/
在test目录下创建一个代码生成类
代码示例:
public class CodeGenerator {
public static void main(String[] args) {
String url="jdbc:mysql:///coms";
String username="root";
String password="root";
String moduleName="sys";
String mapperLocation="D:\\code\\src\\main\\resources\\mapper\\"+moduleName;
//数据库表
String tables="admin,,role,menu,role_menu";
FastAutoGenerator.create(url, username, password)
.globalConfig(builder -> {
builder.author("author") // 设置作者
// .enableSwagger() // 开启 swagger 模式
// .fileOverride() // 覆盖已生成文件
.outputDir("D:\\code\\src\\main\\java"); // 指定输出目录
})
.packageConfig(builder -> {
builder.parent("com.code") // 设置父包名
.moduleName(moduleName) // 设置父包模块名
.pathInfo(Collections.singletonMap(OutputFile.xml, mapperLocation)); // 设置mapperXml生成路径
})
.strategyConfig(builder -> {
builder.addInclude(tables) // 设置需要生成的表名
.addTablePrefix(""); // 设置过滤表前缀
})
.templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
.execute();
}
}
注意事项:需要特别注意的是,请务必在启动类里做一次mapper扫描,以便spring能正确将mapper识别为bean,添加以下注解(示例):
@MapperScan("com.*.mapper")
最后测试启动是否正常