一、介绍
本教程将使用mybatis-plus工具来自动生成Controll,Service,Entity,Mapper,Mapper.xml层代码。需要有两个基类。
- baseEntity:用来写一些公共字段。例如:创建时间,创建人等
- baseController:用来写基础公共的控制
二、实现步骤
- 首先在数据库中创建好 数据库和要生成代码对应的表。我这里已创建了account,customer,resource,role,role_resource这五个表。
-
/* SQLyog 企业版 - MySQL GUI v8.14 MySQL - 5.5.5-10.3.28-MariaDB : Database - project ********************************************************************* */ /*!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*/`project` /*!40100 DEFAULT CHARACTER SET utf8 */; USE `project`; /*Table structure for table `account` */ DROP TABLE IF EXISTS `account`; CREATE TABLE `account` ( `account_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `role_id` bigint(20) unsigned DEFAULT NULL COMMENT '角色id', `username` varchar(20) DEFAULT NULL COMMENT '用户名', `password` varchar(32) DEFAULT NULL COMMENT '密码', `salt` varchar(32) DEFAULT NULL COMMENT '加密盐', `real_name` varchar(50) DEFAULT NULL COMMENT '真实姓名', `sex` char(1) DEFAULT NULL COMMENT '性别', `email` varchar(100) DEFAULT NULL COMMENT '邮箱', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `modified_time` datetime DEFAULT NULL COMMENT '修改时间', `create_account_id` bigint(20) unsigned DEFAULT NULL COMMENT '创建人', `modified_account_id` bigint(20) unsigned DEFAULT NULL COMMENT '修改人', `deleted` tinyint(3) unsigned DEFAULT 0 COMMENT '逻辑删除标识(0、否 1、是)', PRIMARY KEY (`account_id`) USING BTREE, KEY `FK_account_role_id` (`role_id`), CONSTRAINT `FK_account_role_id` FOREIGN KEY (`role_id`) REFERENCES `role` (`role_id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='账号表'; /*Data for the table `account` */ insert into `account`(`account_id`,`role_id`,`username`,`password`,`salt`,`real_name`,`sex`,`email`,`create_time`,`modified_time`,`create_account_id`,`modified_account_id`,`deleted`) values (1,1,'mp','17a1640916cfa8356adc4336a72ac75d','ecbe5fac60d1499595fbb98dfa854501','程序牛人','男','mp@126.com','2020-11-10 13:46:32','2020-11-15 17:09:28',NULL,1,0); /*Table structure for table `customer` */ DROP TABLE IF EXISTS `customer`; CREATE TABLE `customer` ( `customer_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键', `real_name` varchar(50) DEFAULT NULL COMMENT '真实姓名', `sex` char(1) DEFAULT NULL COMMENT '性别', `age` tinyint(3) unsigned DEFAULT NULL COMMENT '年龄', `email` varchar(100) DEFAULT NULL COMMENT '邮箱', `phone` varchar(11) DEFAULT NULL COMMENT '手机号码', `address` varchar(200) DEFAULT NULL COMMENT '地址', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `modified_time` datetime DEFAULT NULL COMMENT '修改时间', `create_account_id` bigint(20) unsigned DEFAULT NULL COMMENT '创建人', `modified_account_id` bigint(20) unsigned DEFAULT NULL COMMENT '修改人', `deleted` tinyint(3) unsigned DEFAULT 0 C