MyBatis-Plus的使用
数据库基本设计完毕,创建完数据库后就需要让后端连接数据库。在这里用MyBatis-Plus的代码生成器能快速生成entity,mapper,service等文件。
操作步骤
第一步,添加依赖
在pom.xml文件中的dependencies里添加如下几行代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
   | <dependency>     <groupId>com.baomidou</groupId>     <artifactId>mybatis-plus-spring-boot3-starter</artifactId>     <version>3.5.9</version> </dependency> <dependency>     <groupId>com.baomidou</groupId>     <artifactId>mybatis-plus-generator</artifactId>     <version>3.5.9</version> </dependency> <dependency>     <groupId>org.freemarker</groupId>     <artifactId>freemarker</artifactId>     <version>2.3.31</version> </dependency>
   | 
 
现在我用的是最新的版本,如有问题请去官网查看是否有更新。其中freemarker是我要使用的模版引擎。
第二步 后端连接数据库
在application.properties下写明你要连接的数据库的详细信息,我用的是mysql5.7。
1 2 3 4 5 6
   | spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost:3306/"yourDatabaseName" spring.datasource.username="yourSqlUsername(maybe root)" spring.datasource.password="yourSqlPassword" mybatis-plus.mapper-locations=classpath:xml/*.xml mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
   | 
 
请将双引号的地方换上你自己要使用的。其中最后一句话是为了之后在终端打印出代码执行的sql语句。
第三步 编写代码生成器代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
   | package com.airomance.easytravelroute;
  import com.baomidou.mybatisplus.generator.FastAutoGenerator; import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
  import java.nio.file.Paths;
  public class CodeGenerator {     public static void main(String[] args) {         String tables = "users,roles,xxx,xxx";         FastAutoGenerator.create("jdbc:mysql://localhost:3306/yourDatabaseName","username","password")                 .globalConfig(builder -> builder                         .author("airomance")                         .outputDir(Paths.get(System.getProperty("user.dir"))+"/src/main/java")                         .commentDate("yyyy-MM-dd")                 )                 .packageConfig(builder -> builder                         .parent("com.airomance.easytravelroute")                         .entity("entity")                         .mapper("mapper")                         .service("service")                         .serviceImpl("service.impl")                         .xml("mapper.xml")                 )                 .strategyConfig(builder -> builder                         .addInclude(tables.split(","))                         .entityBuilder()                         .enableLombok()                         .enableFileOverride()                         .controllerBuilder()                         .enableRestStyle()                 )                 .templateEngine(new FreemarkerTemplateEngine())                 .execute();     } }
 
   | 
 
请将数据库涉及的数据库名称,用户名,密码换成自己的。还有包名。
第四步 运行代码生成器
运行代码后应该会自动创建出entity,mapper,service,controller层等文件。这时需要把mapper文件夹下的xml文件夹移动到项目的resources文件夹下,这样方便配置也是一般的使用习惯。
注意,这里xml必须移动,原因在第二步已经设置了xml文件夹的路径,就是这句配置:
mybatis-plus.mapper-locations=classpath:xml/*.xml
第五步 设置mapper路径
我们需要将mapper文件夹的路径告诉Spring boot,在启动项目的application文件下添加一个注解。
@MapperScan("com.airomance.easytravelroute.mapper")
添加后这个文件代码应该是这样的:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
   | package com.airomance.easytravelroute;
  import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
  @SpringBootApplication @MapperScan("com.airomance.easytravelroute.mapper") public class EasyTravelRouteApplication {
  	public static void main(String[] args) { 		SpringApplication.run(EasyTravelRouteApplication.class, args); 	}
  }
 
   | 
 
结束
至此应该能够正常运行项目,然后进行接口的详细编写了。