中文字幕精品亚洲无线码二区,国产黄a三级三级三级看三级,亚洲七七久久桃花影院,丰满少妇被猛烈进入,国产小视频在线观看网站

springboot~Screw生成數據庫(ku)文(wen)檔

數據庫說(shuo)明文檔,在我們(men)開發(fa)項(xiang)目時(shi)是非(fei)常必要(yao)(yao)的,有時(shi)項(xiang)目交付時(shi),客戶(hu)也是需要(yao)(yao)讓我們(men)提供的,而如果人工編寫,比(bi)如耗時(shi),通過screw組(zu)件來生成文檔,非(fei)常方便。

源代碼和使用:

添加依賴

     <dependency>
            <groupId>cn.smallbun.screw</groupId>
            <artifactId>screw-core</artifactId>
            <version>1.0.3</version>
     </dependency>

編寫生成數據庫代碼

@Test
public void documentGeneration() {
		// 數據源
		HikariConfig hikariConfig = new HikariConfig();
		hikariConfig.setDriverClassName("com.mysql.cj.jdbc.Driver");
		hikariConfig.setJdbcUrl("jdbc:mysql://127.0.0.1:3306/pig");
		hikariConfig.setUsername("root");
		hikariConfig.setPassword("123456");
		// 設置可以獲取tables remarks信息
		hikariConfig.addDataSourceProperty("useInformationSchema", "true");
		hikariConfig.setMinimumIdle(2);
		hikariConfig.setMaximumPoolSize(5);
		DataSource dataSource = new HikariDataSource(hikariConfig);
		// 生成配置
		EngineConfig engineConfig = EngineConfig.builder()
				// 生成文件路徑
				.fileOutputDir("d:\\數據庫說明文檔screw")
				// 打開目錄
				.openOutputDir(true)
				// 文件類型
				.fileType(EngineFileType.HTML)
				// 生成模板實現
				.produceType(EngineTemplateType.freemarker).build();

		// 忽略表
		ArrayList<String> ignoreTableName = new ArrayList<>();
		ignoreTableName.add("test_user");
		ignoreTableName.add("test_group");
		// 忽略表前綴
		ArrayList<String> ignorePrefix = new ArrayList<>();
		ignorePrefix.add("test_");
		// 忽略表后綴
		ArrayList<String> ignoreSuffix = new ArrayList<>();
		ignoreSuffix.add("_test");
		ProcessConfig processConfig = ProcessConfig.builder()
				// 指定生成邏輯、當存在指定表、指定表前綴、指定表后綴時,將生成指定表,其余表不生成、并跳過忽略表配置
				// 根據名稱指定表生成
				.designatedTableName(new ArrayList<>())
				// 根據表前綴生成
				.designatedTablePrefix(new ArrayList<>())
				// 根據表后綴生成
				.designatedTableSuffix(new ArrayList<>())
				// 忽略表名
				.ignoreTableName(ignoreTableName)
				// 忽略表前綴
				.ignoreTablePrefix(ignorePrefix)
				// 忽略表后綴
				.ignoreTableSuffix(ignoreSuffix).build();
		// 配置
		Configuration config = Configuration.builder()
				// 版本
				.version("1.0.0")
				// 描述
				.description("數據庫設計文檔生成")
				// 數據源
				.dataSource(dataSource)
				// 生成配置
				.engineConfig(engineConfig)
				// 生成配置
				.produceConfig(processConfig).build();
		// 執行生成
		new DocumentationExecute(config).execute();
	}

文檔效果

posted @ 2022-09-02 16:52  張占嶺  閱讀(197)  評論(0)    收藏  舉報