springboot+mybais+mabatisplus(swagger)实现增删改查接口

学习阶段,记录一下!
数据库:

/*
 Navicat Premium Data Transfer

 Source Server         : my
 Source Server Type    : MySQL
 Source Server Version : 50722
 Source Host           : localhost:3306
 Source Schema         : site

 Target Server Type    : MySQL
 Target Server Version : 50722
 File Encoding         : 65001

 Date: 05/08/2020 09:08:18
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for about
-- ----------------------------
DROP TABLE IF EXISTS `about`;
CREATE TABLE `about`  (
  `id` int(255) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `profile` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '公司简介',
  `history` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '公司历史',
  `honor` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '公司荣誉',
  `qualification` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '公司资质',
  `culture` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '公司文化',
  `surrounding` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '精美周边',
  `corner` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创嘉一角',
  `phone` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '联系方式',
  `uid` int(1) NOT NULL COMMENT '关于我们',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of about
-- ----------------------------
INSERT INTO `about` VALUES (0, '', '', '', '', '', '', '', '', 1);
INSERT INTO `about` VALUES (1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'ceshi', 1);
INSERT INTO `about` VALUES (3, 'ceshi', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
INSERT INTO `about` VALUES (4, '福建创意嘉和软件有限公司(Fujian Chuang YI Jia He Digital Inc.),由国内知名网络游戏相关软件企业精英组建。总部位于中国福建省福州市。 创意嘉和拥有全球领先的脚本开发核心技术及企业办公软件研发技术,秉承服务天下玩家的理念,致力于网络游戏周边市场的开拓。为天下玩家提供个性化的创意服务。主营产品有:脚本开发软件【按键精灵】、游戏工具箱【简单百宝箱】、【新浪手游助手】、【新浪页游助手】', '【2013中国年度软件企业评选】', '\"123\"', ' ISO9001质量管理体系认证', '共赢:\r\n面对用户,持续提供超越用户期望的产品和服务;\r\n面对员工,为员工提供适合的职业发展通道,实现员工的个人价值;\r\n面对合作伙伴,努力在长期发展中为彼此创造更多的企业盈利与成长机会。\r\n\r\n\r\n \r\n\r\n ', '精美抱枕', '前台\r\n ', '福州市鼓楼区洪山镇梁厝路2号华雄大厦3号楼6-7层\r\n\r\n邮编地址:350001\r\n\r\n业务电话:0591-83839689\r\n联系传真:0591-83836316\r\n招聘邮箱:[email protected]\r\n商务邮箱:[email protected]', 1);
INSERT INTO `about` VALUES (5, '福建创意嘉和软件有限公司(Fujian Chuang YI Jia He Digital Inc.),由国内知名网络游戏相关软件企业精英组建。总部位于中国福建省福州市。 创意嘉和拥有全球领先的脚本开发核心技术及企业办公软件研发技术,秉承服务天下玩家的理念,致力于网络游戏周边市场的开拓。为天下玩家提供个性化的创意服务。主营产品有:脚本开发软件【按键精灵】、游戏工具箱【简单百宝箱】、【新浪手游助手】、【新浪页游助手】', '【2013中国年度软件企业评选】', '22000', ' ISO9001质量管理体系认证', '共赢:\r\n面对用户,持续提供超越用户期望的产品和服务;\r\n面对员工,为员工提供适合的职业发展通道,实现员工的个人价值;\r\n面对合作伙伴,努力在长期发展中为彼此创造更多的企业盈利与成长机会。\r\n\r\n\r\n \r\n\r\n ', '精美抱枕', '前台\r\n ', '福州市鼓楼区洪山镇梁厝路2号华雄大厦3号楼6-7层\r\n\r\n邮编地址:350001\r\n\r\n业务电话:0591-83839689\r\n联系传真:0591-83836316\r\n招聘邮箱:[email protected]\r\n商务邮箱:[email protected]', 1);
INSERT INTO `about` VALUES (6, '福建创意嘉和软件有限公司(Fujian Chuang YI Jia He Digital Inc.),由国内知名网络游戏相关软件企业精英组建。总部位于中国福建省福州市。 创意嘉和拥有全球领先的脚本开发核心技术及企业办公软件研发技术,秉承服务天下玩家的理念,致力于网络游戏周边市场的开拓。为天下玩家提供个性化的创意服务。主营产品有:脚本开发软件【按键精灵】、游戏工具箱【简单百宝箱】、【新浪手游助手】、【新浪页游助手】', '【2013中国年度软件企业评选】', '123', ' ISO9001质量管理体系认证', '共赢:\r\n面对用户,持续提供超越用户期望的产品和服务;\r\n面对员工,为员工提供适合的职业发展通道,实现员工的个人价值;\r\n面对合作伙伴,努力在长期发展中为彼此创造更多的企业盈利与成长机会。\r\n\r\n\r\n \r\n\r\n ', '精美抱枕', '前台\r\n ', '福州市鼓楼区洪山镇梁厝路2号华雄大厦3号楼6-7层\r\n\r\n邮编地址:350001\r\n\r\n业务电话:0591-83839689\r\n联系传真:0591-83836316\r\n招聘邮箱:[email protected]\r\n商务邮箱:[email protected]', 1);

-- ----------------------------
-- Table structure for cooperation
-- ----------------------------
DROP TABLE IF EXISTS `cooperation`;
CREATE TABLE `cooperation`  (
  `id` int(255) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `system` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '产品体系',
  `cooperationCase` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '合作案例',
  `phone` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '联系方式',
  `partner` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '合作伙伴',
  `system_business` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '产品体系_业务',
  `system_describe` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '产品体系_业务描述',
  `uid` int(1) NULL DEFAULT NULL COMMENT '商务合作',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of cooperation
-- ----------------------------
INSERT INTO `cooperation` VALUES (1, '商务合作', '游戏脚本开发工具。拥有自主知识产权的Q语言脚本引擎,具备脚本录制、中文界面编程、脚本编辑器等核心功能。', '公司地址:福州市鼓楼区洪山镇梁厝路2号华雄大厦3号楼6-7层', '福建创意嘉和软件有限公司拥有《简单百宝箱》、《按键精灵》、《松果游戏浏览器》等产品,服务200万游戏玩家,与众多知名媒体有着良好的关系,也先后与淘宝、360、5173等知名互联网企业展开合作。', '键鼠操作模拟软件', '拥有自主知识产权的脚本引擎,研究脚本核心技术,提供脚本开发平台。提供脚本开发者交流社区,为脚本增值业务输送开发者。', 2);
INSERT INTO `cooperation` VALUES (2, '游戏工具聚合平台', '简单百宝箱\r\n\r\n简单百宝箱\r\n\r\n', '游戏工具的软件管家类产品,采取自主研发+收录精品并行的策略,以工具免费+广告少的特点吸引玩家,目前拥有每日120万独立IP的用户量,是目前公司用户量最大的产品。', '企业级脚本定制', '定制企业级脚本服务,为企业开发脚本机器人,解决繁琐操作的问题,提高企业生产效率,降低企业人力成本。', '硬件版按键精灵,韩国同类产品得到政府认可和厂商支持。核心优势是具有较强的游戏兼容性。', 2);

-- ----------------------------
-- Table structure for news
-- ----------------------------
DROP TABLE IF EXISTS `news`;
CREATE TABLE `news`  (
  `id` int(255) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `title` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '标题',
  `time` datetime(0) NULL DEFAULT NULL COMMENT '发表时间',
  `content` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '新闻内容',
  `uid` int(1) NOT NULL COMMENT '新闻',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of news
-- ----------------------------
INSERT INTO `news` VALUES (1, 'ceshi', NULL, NULL, 3);
INSERT INTO `news` VALUES (2, '玩转国球 创嘉员工展现别样风采', '2020-07-31 18:03:30', '  为了促进企业和谐发展,丰富公司职工文化体育生活,3月2日——3月30日,创嘉举办了第三届乒乓球比赛。\r\n        小巧灵动的乒乓球素有国球之美誉,是举国上下、老幼皆爱的一项体育活动,在创嘉更不乏乒乓球爱好者。比赛通知一发出,各部门员工积极响应,共有23名乒乓球爱好者报名参与。\r\n        本次比赛共设有男子单打和女子单打两个项目。各单项比赛均采用三局两胜单淘汰赛制,每局11分制,胜者直接进入下一阶段比赛,各项比赛角逐出四强后改用五局三胜11分制。\r\n        经过几个阶段的激烈角逐,', 3);
INSERT INTO `news` VALUES (3, '按键精灵荣获2014年度最受用户欢迎奖', '2020-08-10 14:54:52', '  近日,由360互联网安全中心举办的“2014中国软件风云榜”评选最终结果揭晓,福建创意嘉和软件有限公司产品按键精灵凭借不断创新地发展实践和优良的市场口碑喜获“2014年度最受用户欢迎奖”。', 3);
INSERT INTO `news` VALUES (4, 'ceshi', NULL, NULL, 3);

-- ----------------------------
-- Table structure for prodect
-- ----------------------------
DROP TABLE IF EXISTS `prodect`;
CREATE TABLE `prodect`  (
  `id` int(255) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `productName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '产品名称',
  `introduce` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '产品介绍',
  `features` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '产品特性',
  `uid` int(1) NOT NULL COMMENT '产品',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of prodect
-- ----------------------------
INSERT INTO `prodect` VALUES (1, '按键精灵', '按键精灵是一款模拟鼠标键盘动作的脚本开发软件。用户可通过Q语言“傻瓜”编程迅速完成功能强大的动作脚本,软件拥有简单易用,无须编程基础,入门快等特点,凡是在电脑前用双手可以完成的动作均可用按键精灵制作出相应的便捷脚本。', '1.用脚本优化业务流程,提高工作效率,且脚本开发简单,能够降低企业成本。\r\n2.加速办公自动化,提高工作效率。\r\n3.模拟人工操作网络游戏的人物,优化游戏体验,能有效解决游戏沉迷的问题,保护网游玩家身体健康。', 4);
INSERT INTO `prodect` VALUES (2, '百宝箱', '是一款目前用户量最多的网游工具管家类产品,为新浪荣誉产品。旗下拥有目前市面上热门游戏的辅助工具,包括:英雄联盟百宝箱、DNF百宝箱、CF百宝箱、蘑菇等,除此之外,简单百宝箱还支持工具下载、工具管理等功能,并且自主研发了20多个实用小工具,功能包括键盘鼠标连点、小闹钟、定时关机、系统垃圾清理、游戏加血助手、答题器、连发工具、魔兽世界插件、多开辅助工具、模拟器和加点器等。', '1.为玩家提供优质、安全的游戏工具,拥有极强的品牌影响力与用户黏着度。\r\n2.提供给游戏厂商优秀的宣传展示渠道,迅速实现游戏爆发性推广。\r\n3.提供游戏软件开发者开放的分享平台,为个人软件开发者制造创业机会。', 4);
INSERT INTO `prodect` VALUES (3, '新浪页游助手', '是一款专门为网页游戏用户量身打造的网页游戏辅助工具。新浪页游助手体积小,安装简单,挂机不掉线,辅助更稳定等特点。现阶段新浪页游助手拥有上百款当下热门网页游戏辅助工具,涵盖各种热门页游题材,如角色扮演、休闲竞技、战争策略、模拟经营等,并且支持多达百家人气页游平台。', '1.为玩家提供优质、安全的页游工具与功能服务,按键内核稳定有保证。\r\n2.提供给页游厂商优秀的宣传展示渠道,迅速导入海量用户。\r\n3.提供页游辅助发布平台,为小软件创业者提供机会。', 4);
INSERT INTO `prodect` VALUES (4, NULL, NULL, NULL, 4);
INSERT INTO `prodect` VALUES (5, NULL, NULL, 'ceshi', 4);

-- ----------------------------
-- Table structure for recruitment
-- ----------------------------
DROP TABLE IF EXISTS `recruitment`;
CREATE TABLE `recruitment`  (
  `id` int(100) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `operatingClass` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '运营类',
  `theArts` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '艺术类',
  `develop` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '开发类',
  `planningClass` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '策划类',
  `functions` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '其他职能',
  `welfare` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '福利待遇',
  `uid` int(1) NOT NULL COMMENT '招聘信息',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of recruitment
-- ----------------------------
INSERT INTO `recruitment` VALUES (1, '运营前台', '艺术', '开发岗位', '策划岗位', '职业技能', '福利待遇\r\n工作时间:5天工作制,日工作7.5小时, 上午09:00-10:00上班,中休11:45-13:00,下午17:30--18:30下班;法定节假日按国家规定执行。\r\n我们为您提供如下员工福利:\r\n带薪假期:公司为员工提供带薪病假、婚假、产假、丧假、年休假、哺乳假、陪产假等。\r\n五险一金:提供养老保险、失业保险、工伤保险、生育保险、医疗保险、住房公积金。\r\n精彩活动:定期组织各类员工活动,含拓展活动、短途旅行、各种协会活动(弓箭社、真冰社、羽毛球协会、篮球协会、乒乓球协会、摄影协会、骑行社等);', 5);
INSERT INTO `recruitment` VALUES (3, NULL, 'ceshi', NULL, NULL, NULL, NULL, 5);

SET FOREIGN_KEY_CHECKS = 1;

项目结构
springboot+mybais+mabatisplus(swagger)实现增删改查接口_第1张图片

1.配置pom.xml


<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0modelVersion>
    <parent>
        <groupId>org.springframework.bootgroupId>
        <artifactId>spring-boot-starter-parentartifactId>
        <version>2.3.2.RELEASEversion>
        <relativePath/> 
    parent>
    <groupId>com.wanggroupId>
    <artifactId>useartifactId>
    <version>0.0.1-SNAPSHOTversion>
    <name>usename>
    <description>Demo project for Spring Bootdescription>

    <properties>
        <java.version>1.8java.version>
    properties>

    <dependencies>
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        <dependency>
            <groupId>io.springfoxgroupId>
            <artifactId>springfox-swagger2artifactId>
            <version>2.7.0version>
        dependency>
        
        <dependency>
            <groupId>io.springfoxgroupId>
            <artifactId>springfox-swagger-uiartifactId>
            <version>2.7.0version>
        dependency>
        
        
        
        
        
        
        
        
        
        

        
        
        
        
        
        
        
        
        
        
        <dependency>
            <groupId>com.baomidougroupId>
            <artifactId>mybatis-plus-boot-starterartifactId>
            <version>3.0.5version>
        dependency>
        <dependency>
            <groupId>com.baomidougroupId>
            <artifactId>mybatis-plusartifactId>
            <version>3.0.5version>
        dependency>
        
        <dependency>
            <groupId>org.apache.velocitygroupId>
            <artifactId>velocity-engine-coreartifactId>
            <version>2.0version>
        dependency>
        
        <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-configuration-processorartifactId>
            <optional>trueoptional>
        dependency>

        <dependency>
            <groupId>mysqlgroupId>
            <artifactId>mysql-connector-javaartifactId>
        dependency>
        <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-starter-webartifactId>
        dependency>

        <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-devtoolsartifactId>
            <scope>runtimescope>
            <optional>trueoptional>
        dependency>
        <dependency>
            <groupId>mysqlgroupId>
            <artifactId>mysql-connector-javaartifactId>
            
            <scope>runtimescope>
        dependency>

        <dependency>
            <groupId>javax.servletgroupId>
            <artifactId>servlet-apiartifactId>
            <version>2.5version>
            <scope>providedscope>
        dependency>


        <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-starter-testartifactId>
            <scope>testscope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintagegroupId>
                    <artifactId>junit-vintage-engineartifactId>
                exclusion>
            exclusions>
        dependency>
    dependencies>

    <build>

        <resources>
            <resource>
                <directory>src/main/javadirectory>
                <includes>
                    <include>**/*.xmlinclude>
                includes>
            resource>
            
            <resource>
                <directory>src/main/resourcesdirectory>
                <includes>
                    <include>**/*.ymlinclude>
                    <include>**/*.yamlinclude>
                    <include>**/*.propertiesinclude>
                    <include>**/*.xmlinclude>
                includes>
                <filtering>falsefiltering>
            resource>
        resources>


        <plugins>
            <plugin>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-maven-pluginartifactId>
            plugin>
        plugins>
    build>

project>


2.引入数据库
springboot+mybais+mabatisplus(swagger)实现增删改查接口_第2张图片
3.我的代码自动生成工具类:

package com.wang;


import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
import com.baomidou.mybatisplus.generator.config.GlobalConfig;
import com.baomidou.mybatisplus.generator.config.PackageConfig;
import com.baomidou.mybatisplus.generator.config.StrategyConfig;
import com.baomidou.mybatisplus.generator.config.po.TableFill;
import com.baomidou.mybatisplus.generator.config.rules.DateType;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;

import java.util.ArrayList;

//自动代码生成器
public class Code {
    public static void main(String[] args) {
        //需要构建一个代码自动生成器对象
        AutoGenerator mpg = new AutoGenerator();
        //配置策略

        //1.全局配置
        GlobalConfig gc = new GlobalConfig();

        //获取系统当前目录
        String property = System.getProperty("user.dir");
        //代码生成到这个目录下
        gc.setOutputDir(property + "/src/main/java");
        gc.setAuthor("王");//代码上注释的作者
        gc.setOpen(false);//是否打开资源管理器(代码生成后打开代码所在文件夹)
        gc.setFileOverride(true);//是否覆盖原来生成的
        gc.setServiceName("%sService");//去Service的I前缀
        gc.setIdType(IdType.ID_WORKER);//生成策略
        gc.setDateType(DateType.ONLY_DATE);//时间类型
        gc.setSwagger2(true);//自动配置swagger文档
        mpg.setGlobalConfig(gc);

        //2.设置数据源(配用户名链接密码连接数据库)
        DataSourceConfig dsc = new DataSourceConfig();
        dsc.setUrl("jdbc:mysql://localhost:3306/site?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC");
        dsc.setDriverName("com.mysql.cj.jdbc.Driver");
        dsc.setUsername("root");
        dsc.setPassword("123456");
        dsc.setDbType(DbType.MYSQL);//数据库的类型
        mpg.setDataSource(dsc);

        //3.包的配置
        PackageConfig pc = new PackageConfig();
        //pc.setModuleName("site");//模块名字
        pc.setParent("com.wang");//生成模块在这个路径下
        pc.setEntity("entity");
        pc.setMapper("mapper");
        pc.setService("service");
        pc.setController("controller");
        mpg.setPackageInfo(pc);

        //策略配置
        StrategyConfig strategy = new StrategyConfig();
        strategy.setInclude("about,cooperation,news,prodect,recruitment");//要生成的表名,想要生成哪个表的代码就填表名,可传多个参数,","隔开
        strategy.setNaming(NamingStrategy.underline_to_camel);//下划线转驼峰命名
        strategy.setColumnNaming(NamingStrategy.underline_to_camel);//列的名字下划线转驼峰
        strategy.setEntityLombokModel(true); //是否使用lombok开启注解链式变成是否支持
        strategy.setLogicDeleteFieldName("deleted");//逻辑删除(deleted表明)

        //自动填充配置
        TableFill tableFill = new TableFill("user", FieldFill.INSERT);//创建时自动填充策略user数据库表
        TableFill tableFill1 = new TableFill("user", FieldFill.INSERT_UPDATE);//修改时
        ArrayList<TableFill> list = new ArrayList<>();
        list.add(tableFill);
        list.add(tableFill1);
        strategy.setTableFillList(list);

        //乐观锁
        strategy.setVersionFieldName("version");//乐观锁
        strategy.setRestControllerStyle(true);//开启驼峰命名格式
        strategy.setControllerMappingHyphenStyle(true);//localhost:8080/hello_id_2


        mpg.execute();//执行

    }
}


Mapper(Dao):没有使用xml

package com.wang.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.wang.entity.About;
import org.apache.ibatis.annotations.*;
import org.mybatis.spring.annotation.MapperScan;

import java.util.List;

/**
 * 

* Mapper 接口 *

* * @author 王 * @since 2020-08-01 */
@MapperScan public interface AboutMapper extends BaseMapper<About> { //查询所有《关于我们》 @Select("select * from site.about") List<About> queryAllAbout(); //通过id查询 @Select("select * from site.about where id=#{id}") About queryById(Integer id); //通过uid查询 @Select("select * from site.about where uid=#{uid}") List<About> queryByuId(Integer uid); //模糊查询 @Select("select * from about where profile like '%${value}%') " + "or history LIKE '%${value}%' " + "or honor LIKE '%${value}%' " + "or qualification LIKE '%${value}%' " + "or culture LIKE '%${value}%' " + "or surrounding LIKE '%${value}%' " + "or corner LIKE '%${value}%' " + "or phone LIKE '%${value}%' " + "or uid LIKE '%${value}%'" + " ") //@Select("SELECT * FROM about WHERE honor LIKE '%${value}%' ") List<About> queryLike(@Param("value") String value); //添加信息 @Insert("insert into site.about (id,profile,history,honor,qualification,culture,surrounding,corner,phone) " + "values(#{id},#{profile},#{history},#{honor},#{qualification},#{culture},#{surrounding},#{corner},#{phone})") //@Insert("insert into site.about(profile)values(#{profile})") int addAbout(About about); //修改信息 @Update("update site.about set profile=#{about.profile},history=#{about.history},honor=#{about.honor},qualification=#{about.qualification}," + "culture=#{about.culture},surrounding=#{about.surrounding},corner=#{about.corner},phone=#{about.phone} where id=#{id}") int updateAbout(@Param("about") About about, @Param("id") Integer id); //删除信息 @Delete("delete from site.about where id=#{id}") int deleteAbout(Integer id); }

Service:

package com.wang.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.wang.entity.About;

import java.util.List;

/**
 * 

* 服务类 *

* * @author 王 * @since 2020-08-01 */
public interface AboutService extends IService<About> { //查询所有 List<About> queryAllAbout(); //通过id查询 About queryById(Integer id); //通过uid查询 List<About> queryByuId(Integer uid); //模糊查询 List<About> queryLike(String value); //添加信息 int addAbout(About about); //修改信息 int updateAbout(About about, Integer id); //删除信息 int deleteAbout(Integer id); }

ServiceImpl:

package com.wang.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.wang.entity.About;
import com.wang.mapper.AboutMapper;
import com.wang.service.AboutService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 

* 服务实现类 *

* * @author 王 * @since 2020-08-01 */
@Service public class AboutServiceImpl extends ServiceImpl<AboutMapper, About> implements AboutService { @Autowired AboutMapper aboutMapper; @Override public List<About> queryAllAbout() { return aboutMapper.queryAllAbout(); } @Override public About queryById(Integer id) { return aboutMapper.queryById(id); } @Override public List<About> queryByuId(Integer uid) { return aboutMapper.queryByuId(uid); } @Override public List<About> queryLike(String value) { //System.out.println("servlceimpl:" + value); return aboutMapper.queryLike(value); } @Override public int addAbout(About about) { return aboutMapper.addAbout(about); } @Override public int updateAbout(About about, Integer id) { // aboutMapper.updateAbout(about); // return aboutMapper.queryById(about.getId()); return aboutMapper.updateAbout(about, id); } @Override public int deleteAbout(Integer id) { return aboutMapper.deleteAbout(id); } }

Controller:

package com.wang.controller;


import com.wang.entity.About;
import com.wang.service.impl.AboutServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.List;

/**
 * 

* 前端控制器 *

* * @author 王 * @since 2020-08-01 */
@Controller @CrossOrigin @Api(value = "关于我们") @RequestMapping("/about") public class AboutController { @Autowired AboutServiceImpl aboutService; //查询全部 @ApiOperation(value = "查询全部")//sawgger @RequestMapping("/api_all_about") @ResponseBody public List<About> queryAllAbout() { return aboutService.queryAllAbout(); } //通过id查询 @RequestMapping("/api_byid_about") @ResponseBody public About queryById(Integer id) { //return aboutService.queryById(1); System.out.println(aboutService.queryById(id)); return aboutService.queryById(id); } //模糊查询 @GetMapping("/api_like_about") @ResponseBody public List<About> queryLike(String value) { //System.out.println("controller:" + value); return aboutService.queryLike(value); } //添加 @RequestMapping("/api_add_about") @ResponseBody public int addAbout(About about) { //return aboutService.addAbout("zhansgan1"); return aboutService.addAbout(about); } //修改 @RequestMapping("/api_update_about") @ResponseBody public int updateAbout(About about, Integer id) { return aboutService.updateAbout(about, id); } //删除 @RequestMapping("/api_del_about") @ResponseBody public int deleteAbout(Integer id) { //return aboutService.deleteAbout(2); return aboutService.deleteAbout(id); } //通过uid查询 @RequestMapping("/api_byuid_about") @ResponseBody public List<About> queryByuId(Integer uid) { System.out.println(aboutService.queryById(uid)); return aboutService.queryByuId(uid); } }

启动类:加入swagger注解@EnableSwagger2

package com.wang;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@SpringBootApplication
@MapperScan("com.wang.mapper")
@EnableSwagger2
public class SitesApplication {

    public static void main(String[] args) {
        SpringApplication.run(SitesApplication.class, args);
    }

}

运行:
在浏览器输入http://localhost:8080/swagger-ui.html 进入swagger接口测试页面:
springboot+mybais+mabatisplus(swagger)实现增删改查接口_第3张图片
运行接口;可以看到接口详细信息以及运行后查出的数据
springboot+mybais+mabatisplus(swagger)实现增删改查接口_第4张图片
可以传参:
springboot+mybais+mabatisplus(swagger)实现增删改查接口_第5张图片

你可能感兴趣的:(spring,boot,spring,boot,mybatis,java)