初始化
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
package com.adc.da.doc;
|
||||
|
||||
import io.github.swagger2markup.GroupBy;
|
||||
import io.github.swagger2markup.Language;
|
||||
import io.github.swagger2markup.Swagger2MarkupConfig;
|
||||
import io.github.swagger2markup.Swagger2MarkupConverter;
|
||||
import io.github.swagger2markup.builder.Swagger2MarkupConfigBuilder;
|
||||
import io.github.swagger2markup.markup.builder.MarkupLanguage;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
|
||||
import java.net.URL;
|
||||
import java.nio.file.Paths;
|
||||
|
||||
@RunWith(SpringRunner.class)
|
||||
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT)
|
||||
public class DocGenerate {
|
||||
|
||||
@Test
|
||||
public void generateDocs() throws Exception {
|
||||
|
||||
Swagger2MarkupConfig config = new Swagger2MarkupConfigBuilder()
|
||||
.withMarkupLanguage(MarkupLanguage.MARKDOWN)
|
||||
// .withMarkupLanguage(MarkupLanguage.ASCIIDOC)
|
||||
.withOutputLanguage(Language.ZH)
|
||||
.withPathsGroupedBy(GroupBy.TAGS)
|
||||
.withGeneratedExamples()
|
||||
.withoutInlineSchema()
|
||||
.build();
|
||||
|
||||
Swagger2MarkupConverter.from(new URL("http://localhost:8080/v2/api-docs"))
|
||||
.withConfig(config)
|
||||
.build()
|
||||
.toFile(Paths.get("./docs/api"));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
package com.adc.da.gen;
|
||||
|
||||
import java.sql.Connection;
|
||||
import java.sql.DriverManager;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
|
||||
import com.codemagic.DbCodeGenerateFactory;
|
||||
|
||||
public class CodeUtil {
|
||||
|
||||
public CodeUtil() {}
|
||||
|
||||
public static void main(String args[]) {
|
||||
|
||||
String entityPackage;
|
||||
|
||||
|
||||
|
||||
entityPackage = "configuration";
|
||||
|
||||
DbCodeGenerateFactory.codeGenerate("dmk.dmk_mi_wide_table_configuration", entityPackage);
|
||||
DbCodeGenerateFactory.codeGenerate("dmk.dmk_mi_wide_table_configuration", entityPackage);
|
||||
// DbCodeGenerateFactory.codeGenerate("TS_ROLE", entityPackage);
|
||||
// DbCodeGenerateFactory.codeGenerate("TS_MENU", entityPackage);
|
||||
|
||||
// testOracle();
|
||||
}
|
||||
|
||||
|
||||
public static void testOracle()
|
||||
{
|
||||
Connection con = null;// 创建一个数据库连接
|
||||
PreparedStatement pre = null;// 创建预编译语句对象,一般都是用这个而不用Statement
|
||||
ResultSet result = null;// 创建一个结果集对象
|
||||
try
|
||||
{
|
||||
Class.forName("oracle.jdbc.driver.OracleDriver");// 加载Oracle驱动程序
|
||||
System.out.println("开始尝试连接数据库!");
|
||||
String url = "jdbc:oracle:thin:@//192.168.5.171:1521/orcl";// 127.0.0.1是本机地址,XE是精简版Oracle的默认数据库名
|
||||
String user = "adcepis_test";// 用户名,系统默认的账户名
|
||||
String password = "adcepis_test";// 你安装时选设置的密码
|
||||
con = DriverManager.getConnection(url, user, password);// 获取连接
|
||||
System.out.println("连接成功!");
|
||||
String sql = "select * from TEST";// 预编译语句,“?”代表参数
|
||||
pre = con.prepareStatement(sql);// 实例化预编译语句
|
||||
result = pre.executeQuery();// 执行查询,注意括号中不需要再加参数
|
||||
while (result.next())
|
||||
// 当结果集不为空时
|
||||
System.out.println("学号:" + result.getInt("id") );
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
e.printStackTrace();
|
||||
}
|
||||
finally
|
||||
{
|
||||
try
|
||||
{
|
||||
// 逐一将上面的几个对象关闭,因为不关闭的话会影响性能、并且占用资源
|
||||
// 注意关闭的顺序,最后使用的最先关闭
|
||||
if (result != null)
|
||||
result.close();
|
||||
if (pre != null)
|
||||
pre.close();
|
||||
if (con != null)
|
||||
con.close();
|
||||
System.out.println("数据库连接已关闭!");
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,198 @@
|
||||
package com.adc.da.mp;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;
|
||||
import com.baomidou.mybatisplus.core.toolkit.StringPool;
|
||||
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.DateType;
|
||||
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
|
||||
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Scanner;
|
||||
|
||||
public class CodeGenerator {
|
||||
|
||||
private static String moduleName = "demo"; //模块名称
|
||||
private static String author = "Alex"; //作者
|
||||
private static String projectPath = "D:\\workspace\\workspace_adc-da-components\\adc-da-demo"; //代码生成路径
|
||||
private static String[] tableNames = new String[] {"TS_TEST"}; //需要生成代码的数据库表名
|
||||
private static String[] tablePrefix = new String[] { "TR_", "TS_", "V_" }; //表前缀
|
||||
|
||||
private static String url = "jdbc:oracle:thin:@60.247.58.117:50011:ADC"; //数据源url
|
||||
private static String username = "ADC_PLATFORM"; //数据源连接用户名
|
||||
private static String password = "ADC_PLATFORM"; //数据源连接密码
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
// 代码生成器
|
||||
AutoGenerator mpg = new AutoGenerator();
|
||||
|
||||
// 全局配置
|
||||
GlobalConfig gc = new GlobalConfig();
|
||||
gc.setOutputDir(projectPath + "/src/main/java");
|
||||
gc.setAuthor(author);
|
||||
gc.setOpen(false);
|
||||
gc.setSwagger2(true); //实体属性 Swagger2 注解
|
||||
gc.setBaseColumnList(true);
|
||||
gc.setBaseResultMap(true);
|
||||
gc.setIdType(IdType.UUID);
|
||||
gc.setDateType(DateType.ONLY_DATE);
|
||||
gc.setFileOverride(true);
|
||||
gc.setActiveRecord(true);
|
||||
gc.setControllerName("%sEOController");
|
||||
gc.setServiceName("I%sEOService");
|
||||
gc.setServiceImplName("%sEOServiceImpl");
|
||||
// gc.setEntityName("%sEO");
|
||||
gc.setMapperName("%sEODao");
|
||||
gc.setXmlName("%sEOMapper");
|
||||
// gc.setEnableCache(true);
|
||||
mpg.setGlobalConfig(gc);
|
||||
|
||||
// 数据源配置
|
||||
DataSourceConfig dsc = new DataSourceConfig();
|
||||
dsc.setUrl(url);
|
||||
// dsc.setSchemaName("public");
|
||||
dsc.setDriverName("oracle.jdbc.OracleDriver");
|
||||
dsc.setUsername(username);
|
||||
dsc.setPassword(password);
|
||||
mpg.setDataSource(dsc);
|
||||
|
||||
// 包配置
|
||||
PackageConfig pc = new PackageConfig();
|
||||
pc.setModuleName(moduleName);
|
||||
pc.setParent("com.adc.da");
|
||||
pc.setMapper("dao");
|
||||
mpg.setPackageInfo(pc);
|
||||
|
||||
// 自定义配置
|
||||
InjectionConfig cfg = new InjectionConfig() {
|
||||
@Override
|
||||
public void initMap() {
|
||||
// Map<String, Object> map = new HashMap<>();
|
||||
// map.put("restPath", "${restPath}");
|
||||
// this.setMap(map);
|
||||
}
|
||||
};
|
||||
|
||||
// 如果模板引擎是 freemarker
|
||||
String templatePath = "/templates/mapper.xml.ftl";
|
||||
String templatePath2 = "/templates/entity.java.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/mybatis/mapper/" + moduleName+ "/" + tableInfo.getEntityName() + "EOMapper" +
|
||||
StringPool.DOT_XML;
|
||||
}
|
||||
});
|
||||
focList.add(new FileOutConfig(templatePath2) {
|
||||
@Override
|
||||
public String outputFile(TableInfo tableInfo) {
|
||||
// 自定义输出文件名 , 如果你 Entity 设置了前后缀、此处注意 xml 的名称会跟着发生变化!!
|
||||
return projectPath + "/src/main/java/com/adc/da/" + moduleName + "/entity/" + tableInfo.getEntityName() + "EO" +
|
||||
StringPool.DOT_JAVA;
|
||||
}
|
||||
});
|
||||
/*
|
||||
cfg.setFileCreate(new IFileCreate() {
|
||||
@Override
|
||||
public boolean isCreate(ConfigBuilder configBuilder, FileType fileType, String filePath) {
|
||||
// 判断自定义文件夹是否需要创建
|
||||
checkDir("调用默认方法创建的目录");
|
||||
return false;
|
||||
}
|
||||
});
|
||||
*/
|
||||
cfg.setFileOutConfigList(focList);
|
||||
mpg.setCfg(cfg);
|
||||
|
||||
// 配置模板
|
||||
TemplateConfig templateConfig = new TemplateConfig();
|
||||
|
||||
// 配置自定义输出模板
|
||||
//指定自定义模板路径,注意不要带上.ftl/.vm, 会根据使用的模板引擎自动识别
|
||||
// templateConfig.setEntity("templates/entity2.java");
|
||||
// templateConfig.setService();
|
||||
// templateConfig.setController();
|
||||
|
||||
templateConfig.setEntity(null);
|
||||
// templateConfig.setService(null);
|
||||
// templateConfig.setServiceImpl(null);
|
||||
// templateConfig.setController(null);
|
||||
// templateConfig.setMapper(null);
|
||||
templateConfig.setXml(null);
|
||||
mpg.setTemplate(templateConfig);
|
||||
|
||||
// 策略配置
|
||||
StrategyConfig strategy = new StrategyConfig();
|
||||
strategy.setControllerMappingHyphenStyle(false);
|
||||
strategy.setEntityTableFieldAnnotationEnable(true);
|
||||
strategy.setEntityColumnConstant(true);
|
||||
strategy.setNaming(NamingStrategy.underline_to_camel);
|
||||
strategy.setColumnNaming(NamingStrategy.underline_to_camel);
|
||||
strategy.setEntityLombokModel(true);
|
||||
strategy.setEntitySerialVersionUID(true);
|
||||
// strategy.setInclude("TR_PROPERTY_ENGINE", "TR_PROPERTY_VEHICLE", "TR_PROPERTY_VEHICLE_MODEL", "TR_ROLE_MENU",
|
||||
// "TR_USER_ROLE", "TS_DEPARTMENT", "TS_FILE", "TS_LOG", "TS_MENU", "TS_PROPERTY", "TS_ROLE",
|
||||
// "TS_TENANT", "TS_USER", "TS_AREA", "TT_CHIP", "TT_ENGINE", "TT_SIM", "TT_TERMINAL",
|
||||
// "TT_VEHICLE", "TT_VEHICLE_MODEL", "V_TENANT_PAGE", "V_USER_PAGE", "V_DEPARTMENT_PAGE",
|
||||
// "V_ROLE_PAGE");
|
||||
// strategy.setInclude("TR_ROLE_MENU", "TR_USER_ROLE", "TS_DEPARTMENT", "TS_FILE", "TS_LOG", "TS_MENU",
|
||||
// "TS_PROPERTY", "TS_ROLE", "TS_TENANT", "TS_USER");
|
||||
// strategy.setInclude("TR_PROPERTY_ENGINE", "TR_PROPERTY_VEHICLE", "TR_PROPERTY_VEHICLE_MODEL", "TT_CHIP",
|
||||
// "TT_ENGINE", "TT_SIM", "TT_TERMINAL", "TT_VEHICLE", "TT_VEHICLE_MODEL");
|
||||
// strategy.setInclude("V_TERMINAL_PAGE","TT_CHIP","TT_TERMINAL");
|
||||
// strategy.setInclude("TS_DEPARTMENT");
|
||||
// strategy.setInclude("TS_USER", "TS_TENANT");
|
||||
// strategy.setInclude("V_TENANT_PAGE", "TS_TENANT");
|
||||
// strategy.setRestControllerStyle(true);
|
||||
strategy.setInclude(tableNames);
|
||||
// 公共父类
|
||||
strategy.setSuperControllerClass("com.adc.da.mp.base.BaseController");
|
||||
// 写于父类中的公共字段
|
||||
strategy.setSuperServiceClass("com.adc.da.mp.base.IBaseService");
|
||||
strategy.setSuperEntityClass("com.adc.da.mp.base.BaseEntity");
|
||||
// strategy.setSuperEntityColumns("CREATER_ID", "CREATER_TIME", "UPDATER_ID", "UPDATER_TIME");
|
||||
|
||||
strategy.setRestControllerStyle(true);
|
||||
// strategy.setSuperEntityColumns("id");
|
||||
// strategy.setControllerMappingHyphenStyle(true);
|
||||
strategy.setTablePrefix(tablePrefix);
|
||||
mpg.setStrategy(strategy);
|
||||
mpg.setTemplateEngine(new FreemarkerTemplateEngine());
|
||||
mpg.execute();
|
||||
}
|
||||
|
||||
/**
|
||||
* <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.isNotEmpty(ipt)) {
|
||||
return ipt;
|
||||
}
|
||||
}
|
||||
throw new MybatisPlusException("请输入正确的" + tip + "!");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.adc.da.rsa;
|
||||
|
||||
|
||||
import com.adc.da.util.utils.RSAUtils;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
public class RSATest {
|
||||
@Test
|
||||
public void getRSA(){
|
||||
Map<String,String> map = RSAUtils.createKeys(512);
|
||||
System.out.println("publicKey: "+map.get("publicKey"));
|
||||
System.out.println("privateKey: "+map.get("privateKey"));
|
||||
// System.out.println("model: "+map.get("model"));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user