前言:
SpringBoot版本 : 2.2.6
mybatis-generator-maven-plugin版本: 1.4.0
plugin 使用 mysql版本: 5.1.47
本次主要记录日和使用该插件自动生成pojo mapper xml文件(单表)
1 创建SpringBoot工程
这里不做具体记录,创建工程往常教程很多,
下面贴出重要文件和注意事项
1.1 pom.xml
4.0.0 show.mrkay boot-mybatis-generator 1.0-SNAPSHOT jar org.springframework.boot spring-boot-starter-parent 2.2.6.RELEASE UTF-8 UTF-8 1.8 org.springframework.boot spring-boot-starter org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-test mysql mysql-connector-java com.alibaba druid-spring-boot-starter 1.1.9 org.mybatis.spring.boot mybatis-spring-boot-starter 2.1.0 org.springframework.boot spring-boot-starter-aop org.slf4j jcl-over-slf4j org.slf4j slf4j-log4j12 org.springframework.boot spring-boot-maven-plugin org.mybatis.generator mybatis-generator-maven-plugin 1.4.0 true true mysql mysql-connector-java 5.1.47
1.2 application.yml
server: port: 8080 spring: datasource: driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://localhost:3306/generaltor?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT username: root password: lk0313 druid: db-type: com.alibaba.druid.pool.DruidDataSource # 下面不配置就是采用默认配置 # filters: stat # maxActive: 20 # initialSize: 1 # maxWait: 60000 # minIdle: 1 # timeBetweenEvictionRunsMillis: 60000 # minEvictableIdleTimeMillis: 300000 # validationQuery: select 'x' # testWhileIdle: true # testOnBorrow: false # testOnReturn: false # poolPreparedStatements: true # maxOpenPreparedStatements: 20 mybatis: # 该配置项配置了MyBatis配置文件保存路径 mapper-locations: classpath*:show/makey/dao/*.xml # 配置扫描对应实体所在包,将mapper的实现类注入容器我们在启动器类上加了@MapperScan注解这里就不需要了 logging: file: path: /logs # type-aliases-package: show.mrkay.dao
1.3 generatorConfig.xml
步骤:
1 导入依赖
2 创建*generaltorConfig.xml配置文件
3 配置yml配置文件
注意:
pom中generalto-maven-plugs中必须指定mysql驱动,并且明确版本
generaltorConfig.xml中的
标签中需要指定tableName和生成的实体名字
2 创建数据库表
-- 建表语句: /* SQLyog Enterprise v12.09 (64 bit) MySQL - 5.5.40 : Database - generaltor ********************************************************************* */ /*!40101 SET NAMES utf8 */; /*!40101 SET SQL_MODE=''*/; /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; CREATE DATABASE /*!32312 IF NOT EXISTS*/`generaltor` /*!40100 DEFAULT CHARACTER SET utf8 */; /*Table structure for table `student` */ DROP TABLE IF EXISTS `student`; CREATE TABLE `student` ( `id` int(32) NOT NULL AUTO_INCREMENT, `name` varchar(15) DEFAULT NULL, `sex` varchar(2) DEFAULT NULL, `phone` int(15) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8; /*Data for the table `student` */ insert into `student`(`id`,`name`,`sex`,`phone`) values (1,'lk','男',12345578); /*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
3 运行
如果使用IDEA 我们只需要找到右边侧栏中的maven(没有记得调出了)
找到plugins–>mybatis-generaltor–>mybatis-generaltor:generaltor 之后双击即可,此时刷新一下项目就自动生成我们想要的,mapper和xml以及pojo
4 测试
创建穿点controller和service 来完成一次测试,
package show.mrkay.controller; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.Mapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.servlet.support.JstlUtils; import show.mrkay.dao.StudentMapper; import show.mrkay.pojo.Student; import show.mrkay.service.UserService; import java.util.List; /** * @ClassName: UserController * @description: 用户Controller * @Author: MrKay * @Date: 2020/11/8 */ @RestController @RequestMapping("/user") public class UserController { @Autowired private UserService userService; @GetMapping("/alllist") public ListselectAll(){ return userService.selectAll(); } }
package show.mrkay.service; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import show.mrkay.dao.StudentMapper; import show.mrkay.pojo.Student; import java.util.List; /** * @ClassName: UserService * @description: UserService * @Author: MrKay * @Date: 2020/11/8 */ @Service public class UserService { @Autowired private StudentMapper studentMapper; public ListselectAll(){ List students = studentMapper.selectAll(); return students; } }
package show.mrkay; import org.mybatis.spring.annotation.MapperScan; import org.mybatis.spring.annotation.MapperScans; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication @MapperScan("show.mrkay.dao") public class GeneratorApplication { public static void main(String[] args) { SpringApplication.run(GeneratorApplication.class, args); } }
注意:
启动器类中需要加入@MapperScan(“mapper接口所在包”)注解,这样我们就不需要手动创建实现类了,mybatis会自动帮我们创建
启动之后:
地址栏输入 localhost:8080/user/alllist
得到查询结果:
[{"id":1,"name":"lk","sex":"男","phone":12345578}]
5 完整代码
https://gitee.com/mrkay0313/boot-mybatis-generaltor.git
6 总结
便于自己以后使用,做的一个demo
到此这篇关于SpringBoot整合mybatis-generator-maven-plugin的文章就介绍到这了,更多相关SpringBoot整合mybatis-generator-maven-plugin内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!