电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

一篇超詳細的SpringBoot整合MybatisPlus的文章

瀏覽:5日期:2023-02-22 15:42:17
目錄創建個SpringBoot項目寫個HelloController測試下使用代碼生成器生成代碼添加所需的依賴CodeGenerator運行代碼生成器,在控制臺輸入想要生成的表總結創建個SpringBoot項目

勾選生所需的依賴:

一篇超詳細的SpringBoot整合MybatisPlus的文章

我把application的后綴改為.yml了,方便些。

一篇超詳細的SpringBoot整合MybatisPlus的文章

pom.xml:

<?xml version='1.0' encoding='UTF-8'?><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.0</modelVersion> <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.4.4</version><relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.keafmd</groupId> <artifactId>springboot-mybatisplus</artifactId> <version>0.0.1-SNAPSHOT</version> <name>springboot-mybatisplus</name> <description>Demo project for Spring Boot</description> <properties><java.version>1.8</java.version> </properties> <dependencies><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId></dependency><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> <optional>true</optional></dependency><dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope></dependency><dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional></dependency><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope></dependency> </dependencies> <build><plugins> <plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration> <excludes><exclude> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId></exclude> </excludes></configuration> </plugin></plugins> </build></project>

因為我們配置了數據源,所以需要在application.yml中配置下數據源,不然會起不來,我順便也改了下端口。

application.yml:

server: port: 80spring: datasource: url: jdbc:mysql://127.0.0.1:3306/ssm-java1?useSSL=false&&characterEncoding=UTF-8 driver-class-name: com.mysql.cj.jdbc.Driver username: root password: 18044229寫個HelloController測試下

HelloController:

package com.keafmd.controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;/** * Keafmd * * @ClassName: HelloController * @Description: * @author: 牛哄哄的柯南 * @Date: 2021-04-09 11:11 * @Blog: https://keafmd.blog.csdn.net/ */@RestControllerpublic class HelloController { @RequestMapping('/hello') public String hello(){return 'keafmd'; }}

運行啟動類,訪問:http://127.0.0.1/hello

一篇超詳細的SpringBoot整合MybatisPlus的文章

到此證明SpringBoot沒有問題。

使用代碼生成器生成代碼添加所需的依賴

pom.xml中添加以下依賴:

<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <scope>test</scope> <version>3.4.0</version></dependency><dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <scope>test</scope> <version>2.3.31</version></dependency>

由于代碼生成器并不會在生產環境使用,只是在開發環境中使用了下。所以我們把代碼生成器寫在test包中即可,依賴的使用場景也定義成test即可。

CodeGenerator

CodeGenerator:

package com.keafmd.mp;import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;import com.baomidou.mybatisplus.core.toolkit.StringPool;import com.baomidou.mybatisplus.core.toolkit.StringUtils;import com.baomidou.mybatisplus.generator.AutoGenerator;import com.baomidou.mybatisplus.generator.InjectionConfig;import com.baomidou.mybatisplus.generator.config.*;import com.baomidou.mybatisplus.generator.config.po.TableInfo;import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;import java.util.ArrayList;import java.util.List;import java.util.Scanner;/** * Keafmd * * @ClassName: CodeGenerator * @Description: * @author: 牛哄哄的柯南 * @date: 2021-03-23 21:47 */// 演示例子,執行 main 方法控制臺輸入模塊表名回車自動生成對應項目目錄中public class CodeGenerator { /** * <p> * 讀取控制臺內容 * </p> */ public static String scanner(String tip) {Scanner scanner = new Scanner(System.in);StringBuilder help = new StringBuilder();help.append('請輸入' + tip + ':');System.out.println(help.toString());if (scanner.hasNext()) { String ipt = scanner.next(); if (StringUtils.isNotBlank(ipt)) {return ipt; }}throw new MybatisPlusException('請輸入正確的' + tip + '!'); } public static void main(String[] args) {// 代碼生成器AutoGenerator mpg = new AutoGenerator();// 全局配置GlobalConfig gc = new GlobalConfig();String projectPath = System.getProperty('user.dir');//System.out.println('projectPath = ' + projectPath);gc.setOutputDir(projectPath + '/src/main/java');//gc.setOutputDir('D:test');gc.setAuthor('關注公眾號:牛哄哄的柯南');gc.setOpen(false);// gc.setSwagger2(true); 實體屬性 Swagger2 注解gc.setServiceName('%sService');mpg.setGlobalConfig(gc);// 數據源配置DataSourceConfig dsc = new DataSourceConfig();dsc.setUrl('jdbc:mysql://localhost:3306/ssm-java1?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=UTC');// dsc.setSchemaName('public');dsc.setDriverName('com.mysql.cj.jdbc.Driver');dsc.setUsername('root');dsc.setPassword('18044229');mpg.setDataSource(dsc);// 包配置PackageConfig pc = new PackageConfig();pc.setModuleName(null);pc.setParent('com.keafmd');mpg.setPackageInfo(pc);// 自定義配置InjectionConfig cfg = new InjectionConfig() { @Override public void initMap() {// to do nothing }};// 如果模板引擎是 freemarkerString templatePath = '/templates/mapper.xml.ftl';// 如果模板引擎是 velocity// String templatePath = '/templates/mapper.xml.vm';// 自定義輸出配置List<FileOutConfig> focList = new ArrayList<>();// 自定義配置會被優先輸出focList.add(new FileOutConfig(templatePath) { @Override public String outputFile(TableInfo tableInfo) {// 自定義輸出文件名 , 如果你 Entity 設置了前后綴、此處注意 xml 的名稱會跟著發生變化!!return projectPath + '/src/main/resources/mapper/'+ '/' + tableInfo.getEntityName() + 'Mapper' + StringPool.DOT_XML; }});cfg.setFileOutConfigList(focList);mpg.setCfg(cfg);// 配置模板TemplateConfig templateConfig = new TemplateConfig();templateConfig.setXml(null);mpg.setTemplate(templateConfig);// 策略配置StrategyConfig strategy = new StrategyConfig();strategy.setNaming(NamingStrategy.underline_to_camel);strategy.setColumnNaming(NamingStrategy.underline_to_camel);strategy.setEntityLombokModel(true);strategy.setRestControllerStyle(true);strategy.setInclude(scanner('表名,多個英文逗號分割').split(','));strategy.setControllerMappingHyphenStyle(true);strategy.setTablePrefix('m_');mpg.setStrategy(strategy);mpg.setTemplateEngine(new FreemarkerTemplateEngine());mpg.execute(); }}運行代碼生成器,在控制臺輸入想要生成的表

一篇超詳細的SpringBoot整合MybatisPlus的文章

這樣就會生成一些包及相應的代碼,注意CodeGenerator中的相關代碼(如數據庫的,包名的)需要該成你們需要的。

一篇超詳細的SpringBoot整合MybatisPlus的文章

總結

本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關注好吧啦網的更多內容!

標簽: Spring
相關文章:
主站蜘蛛池模板: 钢格栅板_钢格板网_格栅板-做专业的热镀锌钢格栅板厂家-安平县迎瑞丝网制造有限公司 | 团建-拓展-拓展培训-拓展训练-户外拓展训练基地[无锡劲途] | 能量回馈_制动单元_电梯节能_能耗制动_深圳市合兴加能科技有限公司 | 钢绞线万能材料试验机-全自动恒应力两用机-混凝土恒应力压力试验机-北京科达京威科技发展有限公司 | 诺冠气动元件,诺冠电磁阀,海隆防爆阀,norgren气缸-山东锦隆自动化科技有限公司 | 北京征地律师,征地拆迁律师,专业拆迁律师,北京拆迁律师,征地纠纷律师,征地诉讼律师,征地拆迁补偿,拆迁律师 - 北京凯诺律师事务所 | 丙烷/液氧/液氮气化器,丙烷/液氧/液氮汽化器-无锡舍勒能源科技有限公司 | 广州迈驰新GMP兽药包装机首页_药品包装机_中药散剂包装机 | 曙光腾达官网-天津脚手架租赁-木板架出租-移动门式脚手架租赁「免费搭设」 | 行业分析:提及郑州火车站附近真有 特殊按摩 ?2025实地踩坑指南 新手如何避坑不踩雷 | 连栋温室大棚建造厂家-智能玻璃温室-薄膜温室_青州市亿诚农业科技 | 十二星座查询(性格特点分析、星座运势解读) - 玄米星座网 | 讲师宝经纪-专业培训机构师资供应商_培训机构找讲师、培训师、讲师经纪就上讲师宝经纪 | 引领中高档酒店加盟_含舍·美素酒店品牌官网 | 浙江栓钉_焊钉_剪力钉厂家批发_杭州八建五金制造有限公司 | 深圳公司注册-工商注册公司-千百顺代理记账公司 | 数控车床-立式加工中心-多功能机床-小型车床-山东临沂金星机床有限公司 | 酒瓶_酒杯_玻璃瓶生产厂家_徐州明政玻璃制品有限公司 | 新材料分散-高速均质搅拌机-超声波分散混合-上海化烁智能设备有限公司 | COD分析仪|氨氮分析仪|总磷分析仪|总氮分析仪-圣湖Greatlake | 武汉宣传片制作-视频拍摄-企业宣传片公司-武汉红年影视 | 3A别墅漆/3A环保漆_广东美涂士建材股份有限公司【官网】 | 北京模型公司-军事模型-工业模型制作-北京百艺模型沙盘公司 | 菏泽知彼网络科技有限公司 | 连续密炼机_双转子连续密炼机_连续式密炼机-南京永睿机械制造有限公司 | 莱州网络公司|莱州网站建设|莱州网站优化|莱州阿里巴巴-莱州唯佳网络科技有限公司 | 印刷人才网 印刷、包装、造纸,中国80%的印刷企业人才招聘选印刷人才网! | 湖南教师资格网-湖南教师资格证考试网 | 全温度恒温培养摇床-大容量-立式-远红外二氧化碳培养箱|南荣百科 | 电销卡_稳定企业大语音卡-归属地可选-世纪通信 | 艺术生文化课培训|艺术生文化课辅导冲刺-济南启迪学校 | 亿立分板机_曲线_锯片式_走刀_在线式全自动_铣刀_在线V槽分板机-杭州亿协智能装备有限公司 | 成都亚克力制品,PVC板,双色板雕刻加工,亚克力门牌,亚克力标牌,水晶字雕刻制作-零贰捌广告 | 韦伯电梯有限公司| 沙盘模型公司_沙盘模型制作公司_建筑模型公司_工业机械模型制作厂家 | 自动气象站_气象站监测设备_全自动气象站设备_雨量监测站-山东风途物联网 | 专业生物有机肥造粒机,粉状有机肥生产线,槽式翻堆机厂家-郑州华之强重工科技有限公司 | 东莞喷砂机-喷砂机-喷砂机配件-喷砂器材-喷砂加工-东莞市协帆喷砂机械设备有限公司 | 双舌接地线-PC68数字式高阻计-ZC36|苏海百科 | 水上浮桥-游艇码头-浮动码头-游船码头-码瑞纳游艇码头工程 | 刚性-柔性防水套管-橡胶伸缩接头-波纹管补偿器-启腾供水材料有限公司 |