SpringBoot-2.X 學習筆記10 整合 WebFlux
1 添加依賴
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus</artifactId>
<version>2.0.7</version>
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.7</version>
</dependency>
2 生成代碼
package com.xu.springboot.utils;
import java.util.HashMap;
import java.util.Map;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.InjectionConfig;
import com.baomidou.mybatisplus.generator.config.*;
import com.baomidou.mybatisplus.generator.config.converts.MySqlTypeConvert;
import com.baomidou.mybatisplus.generator.config.rules.DbColumnType;
import com.baomidou.mybatisplus.generator.config.rules.DbType;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
public class MybatisPlusGenenator {
final static String dirPath = "E://MpGenenator//";
public static void main(String[] args) {
AutoGenerator mpg = new AutoGenerator();
GlobalConfig gc = new GlobalConfig();
gc.setOutputDir(dirPath);
gc.setAuthor("hyacinth");
gc.setFileOverride(true);
gc.setActiveRecord(true);
gc.setEnableCache(false);
gc.setBaseResultMap(true);
gc.setBaseColumnList(true);
gc.setXmlName("%sMapper");
gc.setServiceName("%sService");
gc.setServiceImplName("%sServiceImpl");
gc.setControllerName("%sController");
mpg.setGlobalConfig(gc);
DataSourceConfig dsc = new DataSourceConfig();
dsc.setDbType(DbType.MYSQL);
dsc.setTypeConvert(new MySqlTypeConvert(){
@Override
public DbColumnType processTypeConvert(String fieldType) {
System.out.println("轉換類型:" + fieldType);
return super.processTypeConvert(fieldType);
}
});
dsc.setDriverName("com.mysql.cj.jdbc.Driver");
dsc.setUsername("root");
dsc.setPassword("123456");
dsc.setUrl("jdbc:mysql://localhost:3306/spring?serverTimezone=UTC&characterEncoding=utf8");
mpg.setDataSource(dsc);
StrategyConfig strategy = new StrategyConfig();
strategy.setNaming(NamingStrategy.underline_to_camel);
strategy.setEntityBuilderModel(true);
mpg.setStrategy(strategy);
PackageConfig pc = new PackageConfig();
pc.setParent("com.xu");
pc.setModuleName("springboot");
pc.setController("controler");
pc.setEntity("entity");
pc.setMapper("mapper");
pc.setService("service");
pc.setServiceImpl("serviceimpl");
pc.setXml("mapperxml");
mpg.setPackageInfo(pc);
InjectionConfig cfg = new InjectionConfig() {
@Override
public void initMap() {
Map<String, Object> map = new HashMap<String, Object>();
map.put("abc", this.getConfig().getGlobalConfig().getAuthor() + "-mp");
this.setMap(map);
}
};
mpg.setCfg(cfg);
mpg.execute();
System.err.println(mpg.getCfg().getMap().get("abc"));
}
}
3 生成結果
21:43:40.101 [main] DEBUG org.apache.ibatis.logging.LogFactory - Logging initialized using 'class org.apache.ibatis.logging.slf4j.Slf4jImpl' adapter.
21:43:40.108 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - ==========================準備生成文件...==========================
轉換類型:int(11)
轉換類型:varchar(40)
轉換類型:int(11)
轉換類型:varchar(4)
轉換類型:varchar(40)
轉換類型:varchar(40)
轉換類型:int(11) unsigned
轉換類型:varchar(128)
轉換類型:varchar(16)
轉換類型:datetime
轉換類型:int(4)
21:43:40.855 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 創建目錄: [E://MpGenenator
21:43:40.855 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 創建目錄: [E://MpGenenator
21:43:40.856 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 創建目錄: [E://MpGenenator
21:43:40.856 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 創建目錄: [E://MpGenenator
21:43:40.856 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 創建目錄: [E://MpGenenator
21:43:40.857 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 創建目錄: [E://MpGenenator
21:43:40.882 [main] DEBUG org.apache.velocity - CommonsLogLogChute name is 'org.apache.velocity'
21:43:40.882 [main] DEBUG org.apache.velocity - Initializing Velocity, Calling init()...
21:43:40.882 [main] DEBUG org.apache.velocity - Starting Apache Velocity v1.7 (compiled: 2010-11-19 12:14:37)
21:43:40.882 [main] DEBUG org.apache.velocity - Default Properties File: org\apache\velocity\runtime\defaults\velocity.properties
21:43:40.882 [main] DEBUG org.apache.velocity - Trying to use logger class org.apache.velocity.runtime.log.AvalonLogChute
21:43:40.882 [main] DEBUG org.apache.velocity - Target log system for org.apache.velocity.runtime.log.AvalonLogChute is not available (java.lang.NoClassDefFoundError: org/apache/log/format/Formatter). Falling back to next log system...
21:43:40.882 [main] DEBUG org.apache.velocity - Trying to use logger class org.apache.velocity.runtime.log.Log4JLogChute
21:43:40.882 [main] DEBUG org.apache.velocity - Target log system for org.apache.velocity.runtime.log.Log4JLogChute is not available (java.lang.NoClassDefFoundError: org/apache/log4j/Layout). Falling back to next log system...
21:43:40.882 [main] DEBUG org.apache.velocity - Trying to use logger class org.apache.velocity.runtime.log.CommonsLogLogChute
21:43:40.882 [main] DEBUG org.apache.velocity - Using logger class org.apache.velocity.runtime.log.CommonsLogLogChute
21:43:40.885 [main] DEBUG org.apache.velocity - ResourceLoader instantiated: org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
21:43:40.893 [main] DEBUG org.apache.velocity - ResourceCache: initialized (class org.apache.velocity.runtime.resource.ResourceCacheImpl) with class java.util.Collections$SynchronizedMap cache map.
21:43:40.894 [main] DEBUG org.apache.velocity - Loaded System Directive: org.apache.velocity.runtime.directive.Stop
21:43:40.895 [main] DEBUG org.apache.velocity - Loaded System Directive: org.apache.velocity.runtime.directive.Define
21:43:40.895 [main] DEBUG org.apache.velocity - Loaded System Directive: org.apache.velocity.runtime.directive.Break
21:43:40.896 [main] DEBUG org.apache.velocity - Loaded System Directive: org.apache.velocity.runtime.directive.Evaluate
21:43:40.896 [main] DEBUG org.apache.velocity - Loaded System Directive: org.apache.velocity.runtime.directive.Literal
21:43:40.897 [main] DEBUG org.apache.velocity - Loaded System Directive: org.apache.velocity.runtime.directive.Macro
21:43:40.897 [main] DEBUG org.apache.velocity - Loaded System Directive: org.apache.velocity.runtime.directive.Parse
21:43:40.898 [main] DEBUG org.apache.velocity - Loaded System Directive: org.apache.velocity.runtime.directive.Include
21:43:40.899 [main] DEBUG org.apache.velocity - Loaded System Directive: org.apache.velocity.runtime.directive.Foreach
21:43:40.920 [main] DEBUG org.apache.velocity - Created '20' parsers.
21:43:40.924 [main] DEBUG org.apache.velocity - Velocimacro : "velocimacro.library" is not set. Trying default library: VM_global_library.vm
21:43:40.924 [main] DEBUG org.apache.velocity - Could not load resource 'VM_global_library.vm' from ResourceLoader org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader: ClasspathResourceLoader Error: cannot find resource VM_global_library.vm
21:43:40.924 [main] DEBUG org.apache.velocity - Velocimacro : Default library not found.
21:43:40.924 [main] DEBUG org.apache.velocity - Velocimacro : allowInline = true : VMs can be defined inline in templates
21:43:40.924 [main] DEBUG org.apache.velocity - Velocimacro : allowInlineToOverride = false : VMs defined inline may NOT replace previous VM definitions
21:43:40.924 [main] DEBUG org.apache.velocity - Velocimacro : allowInlineLocal = false : VMs defined inline will be global in scope if allowed.
21:43:40.924 [main] DEBUG org.apache.velocity - Velocimacro : autoload off : VM system will not automatically reload global library macros
21:43:40.940 [main] DEBUG org.apache.velocity - ResourceManager : found /templates/entity.java.vm with loader org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
21:43:40.950 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 模板:/templates/entity.java.vm; 文件:E://MpGenenator
21:43:40.951 [main] DEBUG org.apache.velocity - ResourceManager : found /templates/mapper.java.vm with loader org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
21:43:40.952 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 模板:/templates/mapper.java.vm; 文件:E://MpGenenator
21:43:40.954 [main] DEBUG org.apache.velocity - ResourceManager : found /templates/mapper.xml.vm with loader org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
21:43:40.955 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 模板:/templates/mapper.xml.vm; 文件:E://MpGenenator
21:43:40.956 [main] DEBUG org.apache.velocity - ResourceManager : found /templates/service.java.vm with loader org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
21:43:40.957 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 模板:/templates/service.java.vm; 文件:E://MpGenenator
21:43:40.957 [main] DEBUG org.apache.velocity - ResourceManager : found /templates/serviceImpl.java.vm with loader org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
21:43:40.958 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 模板:/templates/serviceImpl.java.vm; 文件:E://MpGenenator
21:43:40.959 [main] DEBUG org.apache.velocity - ResourceManager : found /templates/controller.java.vm with loader org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
21:43:40.960 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 模板:/templates/controller.java.vm; 文件:E://MpGenenator
21:43:40.963 [main] DEBUG org.apache.velocity - ResourceManager : found /templates/entity.java.vm with loader org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
21:43:40.965 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 模板:/templates/entity.java.vm; 文件:E://MpGenenator
21:43:40.966 [main] DEBUG org.apache.velocity - ResourceManager : found /templates/mapper.java.vm with loader org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
21:43:40.967 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 模板:/templates/mapper.java.vm; 文件:E://MpGenenator
21:43:40.968 [main] DEBUG org.apache.velocity - ResourceManager : found /templates/mapper.xml.vm with loader org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
21:43:40.969 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 模板:/templates/mapper.xml.vm; 文件:E://MpGenenator
21:43:40.969 [main] DEBUG org.apache.velocity - ResourceManager : found /templates/service.java.vm with loader org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
21:43:40.970 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 模板:/templates/service.java.vm; 文件:E://MpGenenator
21:43:40.971 [main] DEBUG org.apache.velocity - ResourceManager : found /templates/serviceImpl.java.vm with loader org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
21:43:40.972 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 模板:/templates/serviceImpl.java.vm; 文件:E://MpGenenator
21:43:40.973 [main] DEBUG org.apache.velocity - ResourceManager : found /templates/controller.java.vm with loader org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
21:43:40.973 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - 模板:/templates/controller.java.vm; 文件:E://MpGenenator
21:43:40.998 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - ==========================文件生成完成!!!==========================
hyacinth-mp