1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        實(shí)用!一鍵生成數(shù)據(jù)庫文檔,堪稱數(shù)據(jù)庫界的Swagger

        共 4353字,需瀏覽 9分鐘

         ·

        2020-08-05 18:12

        最近部門訂單業(yè)務(wù)調(diào)整,收攏其他業(yè)務(wù)線的下單入口,做個(gè)統(tǒng)一大訂單平臺(tái)。需要梳理各業(yè)務(wù)線的數(shù)據(jù)表,但每個(gè)業(yè)務(wù)線庫都有近百張和訂單相關(guān)的表,挨個(gè)表一個(gè)一個(gè)字段的弄腦瓜子嗡嗡的。

        為了不重復(fù) CV 操作,抱著一絲希望開始在GitHub里找,看看有沒有什么工具可以用,結(jié)果就真的發(fā)現(xiàn)了寶藏,screw(螺絲釘),居然可以生成數(shù)據(jù)庫文檔,優(yōu)秀啊~。

        數(shù)據(jù)庫文檔圖

        一、數(shù)據(jù)庫支持

          MySQL

          MariaDB

          TIDB

          Oracle

          SqlServer

          PostgreSQL

          Cache DB

        二、配置

        1、pom文件

        引入screw核心包,HikariCP數(shù)據(jù)庫連接池,HikariCP號(hào)稱性能最出色的數(shù)據(jù)庫連接池。


        <dependency>
        ????<groupId>cn.smallbun.screwgroupId>

        ????<artifactId>screw-coreartifactId>
        ????<version>1.0.3version>
        dependency>


        <dependency>
        ????<groupId>com.zaxxergroupId>

        ????<artifactId>HikariCPartifactId>
        ????<version>3.4.5version>
        dependency>


        <dependency>
        ????<groupId>mysqlgroupId>

        ????<artifactId>mysql-connector-javaartifactId>
        ????<version>8.0.20version>
        dependency>

        2、配置數(shù)據(jù)源

        配置數(shù)據(jù)源,設(shè)置?useInformationSchema?可以獲取tables注釋信息。

        spring.datasource.url=jdbc:mysql://45.93.1.5:3306/fire?useUnicode=true&characterEncoding=UTF-8&useSSL=false
        spring.datasource.username=root
        spring.datasource.password=123456
        spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
        spring.datasource.xa.properties.useInformationSchema=true?

        3、screw 核心配置

        screw有兩種執(zhí)行方式,第一種是pom文件配置,另一種是代碼執(zhí)行。

        ?
        ????<plugins>
        ????????<plugin>
        ????????????<groupId>org.springframework.bootgroupId>

        ????????????<artifactId>spring-boot-maven-pluginartifactId>
        ????????plugin>
        ????????<plugin>
        ????????????<groupId>cn.smallbun.screwgroupId>
        ????????????<artifactId>screw-maven-pluginartifactId>
        ????????????<version>1.0.3version>
        ????????????<dependencies>
        ????????????????
        ????????????????<dependency>
        ????????????????????<groupId>com.zaxxergroupId>
        ????????????????????<artifactId>HikariCPartifactId>
        ????????????????????<version>3.4.5version>
        ????????????????dependency>
        ????????????????
        ????????????????<dependency>
        ????????????????????<groupId>mysqlgroupId>
        ????????????????????<artifactId>mysql-connector-javaartifactId>
        ????????????????????<version>8.0.20version>
        ????????????????dependency>
        ????????????dependencies>
        ????????????<configuration>
        ????????????????
        ????????????????<username>rootusername>
        ????????????????
        ????????????????<password>123456password>
        ????????????????
        ????????????????<driverClassName>com.mysql.cj.jdbc.DriverdriverClassName>
        ????????????????
        ????????????????<jdbcUrl>jdbc:mysql://41.92.6.5:3306/firejdbcUrl>
        ????????????????
        ????????????????<fileType>HTMLfileType>
        ????????????????
        ????????????????<openOutputDir>falseopenOutputDir>
        ????????????????
        ????????????????<produceType>freemarkerproduceType>
        ????????????????
        ????????????????
        ????????????????
        ????????????????<description>數(shù)據(jù)庫文檔生成description>
        ????????????????
        ????????????????<version>${project.version}version>
        ????????????????
        ????????????????<title>fire數(shù)據(jù)庫文檔title>
        ????????????configuration>
        ????????????<executions>
        ????????????????<execution>
        ????????????????????<phase>compilephase>
        ????????????????????<goals>
        ????????????????????????<goal>rungoal>
        ????????????????????goals>
        ????????????????execution>
        ????????????executions>
        ????????plugin>
        ????plugins>
        </build>

        配置完以后在?maven project->screw?雙擊執(zhí)行ok。

        運(yùn)行方式

        代碼生成方式也非常簡單。

        @SpringBootTest
        public?class?ScrewApplicationTests?{

        ????@Autowired
        ????ApplicationContext?applicationContext;

        ????@Test
        ????void?contextLoads()?{
        ????????DataSource?dataSourceMysql?=?applicationContext.getBean(DataSource.class);
        ????????//?生成文件配置
        ????????EngineConfig?engineConfig?=?EngineConfig.builder()
        ????????????????//?生成文件路徑,自己mac本地的地址,這里需要自己更換下路徑
        ????????????????.fileOutputDir("D:/")
        ????????????????//?打開目錄
        ????????????????.openOutputDir(false)
        ????????????????//?文件類型
        ????????????????.fileType(EngineFileType.HTML)
        ????????????????//?生成模板實(shí)現(xiàn)
        ????????????????.produceType(EngineTemplateType.freemarker).build();
        ????????//?生成文檔配置(包含以下自定義版本號(hào)、描述等配置連接)
        ????????Configuration?config?=?Configuration.builder()
        ????????????????.version("1.0.3")
        ????????????????.description("生成文檔信息描述")
        ????????????????.dataSource(dataSourceMysql)
        ????????????????.engineConfig(engineConfig)
        ????????????????.produceConfig(getProcessConfig())
        ????????????????.build();
        ????????//?執(zhí)行生成
        ????????new?DocumentationExecute(config).execute();
        ????}

        ????/**
        ?????*?配置想要生成的表+?配置想要忽略的表
        ?????*
        ?????*?@return?生成表配置
        ?????*/

        ????public?static?ProcessConfig?getProcessConfig()?{
        ????????//?忽略表名
        ????????List<String>?ignoreTableName?=?Arrays.asList("a",?"test_group");
        ????????//?忽略表前綴,如忽略a開頭的數(shù)據(jù)庫表
        ????????List<String>?ignorePrefix?=?Arrays.asList("a",?"t");
        ????????//?忽略表后綴
        ????????List<String>?ignoreSuffix?=?Arrays.asList("_test",?"czb_");
        ????????return?ProcessConfig.builder()
        ????????????????//根據(jù)名稱指定表生成
        ????????????????.designatedTableName(Arrays.asList("fire_user"))
        ????????????????//根據(jù)表前綴生成
        ????????????????.designatedTablePrefix(new?ArrayList<>())
        ????????????????//根據(jù)表后綴生成
        ????????????????.designatedTableSuffix(new?ArrayList<>())
        ????????????????//忽略表名
        ????????????????.ignoreTableName(ignoreTableName)
        ????????????????//忽略表前綴
        ????????????????.ignoreTablePrefix(ignorePrefix)
        ????????????????//忽略表后綴
        ????????????????.ignoreTableSuffix(ignoreSuffix).build();
        ????}
        }

        4、文檔格式

        screw?有?HTML、DOCMD?三種格式的文檔。

        代碼中的修改

        .fileType(EngineFileType.HTML)

        或者pom文件

        MD</fileType>

        DOC文檔樣式

        DOC文檔

        HTML文檔樣式

        HTML文檔

        MD文檔樣式

        MD文檔

        不得不說這個(gè)工具是真TM好用,提前完成任務(wù),有點(diǎn)傲嬌有木有!

        傲嬌


        demo 的 GitHub 地址:

        https://github.com/chengxy-nds/Springboot-Notebook/tree/master/springboot-database-doc



        原創(chuàng)不易,燃燒秀發(fā)輸出內(nèi)容,如果有一丟丟收獲,點(diǎn)個(gè)贊鼓勵(lì)一下吧!

        整理了幾百本各類技術(shù)電子書,送給小伙伴們。關(guān)注公號(hào)回復(fù)【666】自行領(lǐng)取。和一些小伙伴們建了一個(gè)技術(shù)交流群,一起探討技術(shù)、分享技術(shù)資料,旨在共同學(xué)習(xí)進(jìn)步,如果感興趣就加入我們吧!


        關(guān)注,邁開成長的第一步
        瀏覽 42
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            国产愉拍91九色国产愉拍| 日韩无码人妻久久一区二区三区| 91人妻人人澡人人爽人人精吕| 超碰毛片| 丁香一区二区| 日韩熟妇视频| A片视频免费观看| 综合成人| 日韩免费| 国产三级AV在线观看| 成年人免费公开视频| 久碰人妻人妻人妻| 久久精品波多野结衣| 国产精品播放| 操人人| 亚洲日韩中文字幕| 中文字幕一区三区人妻视频| 丰满人妻一区二区三区四区不卡| 三级片导航| www.污| 99精品视频在线观看| 七区九区一区在线| 免费黄色视频网站大全| 成人精品毛片| 亚洲一二三| 91香蕉国产在线观看| 欧美操逼电影| 亚洲国产黄色视频| a国产| 丁香婷婷久久久综合精品国产| 91色色色色| 高h网站| 日韩在线视频一区| 亚洲AV无码成人网站国产网站 | 操逼网首页123| 久久国产劲爆∧v内射| 国产欧美精品成人在线观看| 99天天视频| 欧洲精品视频在线观看| 日韩在线综合| 理论三级片| 边添小泬边狠狠躁视频| 欧美一区不卡| 青青草av| 亚洲人妖在线| 一区二区三区四区在线播放| 国产第四页| 2025天天操夜夜操| 乱子伦国产精品视频一级毛| 日韩成人小电影| 伊人在线成人视频| www.99在线| 一级色情片| 一级无码专区| 大香蕉伊人综合在线| AV东方在线| 亚洲成人在线| 97pao| 91人妻在线视频| 天天都色| 嫩BBB槡BBBB槡BBBB百度 | 一区二区三区精品婷婷| 美女一级A片| 国产成人亚洲综合A∨婷婷| 中文字幕色情| 天天日天天干天天草| 午夜成人免费视频| a在线观看免费| 国产亲子乱XXXXimim/| jizz在线免费观看| 国产精品女人精品久久久天天| 人人做人人做人人做,人人做全句下一 | 黑人巨大翔田千里AⅤ| 日韩免费无码| 欧美色逼| 亚洲自拍网站| 农民av| 久久久久999| 麻豆mdapp01.tⅴ| 国产一区二区三区视频在线| 中文字幕亚洲高清| 丁香花在线小说免费全文| 国产精品理论片| 中文字幕麻豆| 不卡AV在线播放| 久热精品免费| 日韩欧美一区二区三区不卡| 久久久久久久伊人| 国产ts在线| 一级片免费观看视频| 中文字幕高清在线| 亚洲一二期视频| 日日摸日日操| 香蕉漫画在线观看18| 日本免费在线视频| 伊人在线视频| 永久m3u8在线观看| 在线观看污视频| 国产精品囯产三级囯产AV野外| 色色免费视频| 亚洲一区图片| 四虎高清无码| 五月天亚洲无码| 国产娇小13videos糟蹋| 西西4444www无码精品| 亚洲国产精品二二三三区| 在线免费观看黄色视频| 在线免费观看a| 中文字幕无码在线| 国产女人高潮毛片| 日日碰狠狠| 国产丰满| 中文字幕在线免费| 91超碰人人| 国产精品乱伦| 成人免费A片喷| 国产性交网站| 精品无码三级在线观看视频| 尹人香蕉久久| 黄色免费看| 麻豆福利在线| 91亚洲精品久久久久久久久久久久 | 五月久久婷婷| 草逼视频网站| 久久久精品| www.婷婷色| 亚洲色诱| 日韩亚洲在线观看| 日韩性爱视屏| 99成人视频| 国产成人69免费看| 99色视频| 操美女视频网站| 色94色.欧美.setu| 丁香五月大香蕉| 性爱福利导航| 婷婷久久五月| 99久久夜色精品国产亚洲 | 成人黄色在线视频| 粉嫩99精品99久久久久久夜| 亚洲护士无码| 岛国无码在线| 五月天婷婷成人| 国产偷拍精品视频| 九九黄片| 亚洲成人大片| 亚洲天堂AB| 天天干人妻| 黑人aV| 天堂在线视频| 亚洲日逼视频| 天天日日日干| 无码免费视频| 熟妇人妻中文AV无码| 国产三级性爱视频| 青青操逼| 黄色视频在线免费播放| 久久先锋| 雾水情缘电影港片| 美女网站在线观看| 蜜桃视频app| 一级a片激情啪啪免费观| 九九福利视频| 天堂AV网站| 天堂亚洲AV无码精品成人| 亚洲AV成人无码精品直播在线| 欧美AⅤ视频| 亚洲天堂无码a| 国产精品国产三级国产专区53| 日韩AV无码专区亚洲AV紧身裤| 老太色HD色老太HD| 国产精品秘国产精品88| 日本处女性高潮喷水视频| 日本特级黄A片免费观看| 澳门无码视频| 蝌蚪九色啦403| 伊人导航| 国产不卡在线视频| 一区二区成人免费视频| 大地影院在线资源观看| 裸体美女视频欧美18| 伊人视频网| 中文字幕成人| 午夜激情视频网站| 人人爽人人做| 久热精品在线| 日韩A片一级无码免费蜜桃| 97色色五月天| 337P粉嫩大胆噜噜噜55569| 五月婷婷免费视频| 无码人妻一区二区三区| 俺也去AV| 91在线免费播放| 麻豆91久久久| 无码黑人| 国产亚洲日韩在线| 日韩精品一区二区亚洲AV观看| 黄色一级爱爱| 亚洲日韩精品中文字幕| 欧美在线视频免费观看| 蜜桃久久av一区| 亚洲一道本在线| 国产又粗又长又硬黄色一级片| 人人操人人干人人摸| wwwsesese| 黄色视频在线观看地址| 日韩AV性爱| 免费在线观看黄| 蜜桃传媒一区二区亚洲| 嫩BX区二区三区的区别| 成年人免费毛片| JlZZJLZZJlZZ亚洲女人17| 天天操天天看| 成人大片在线观看| 美女91网站色| 亚洲一区无码在线观看| 在线不卡免费Av| 91香蕉视频在线播放| 国产一区二区成人久久919色| 大炕上公让我高潮了六次| 黄色小说在线播放| 国产欧美二区综合中文字幕精品一 | 国产精品久久久久久亚洲影视| 日韩三级片在线视频| 亚洲精品aaa| 自拍毛片| 一区二区三区免费| 国产精品无码7777777| 国产精品theporn| 超碰免费99| 综综综综合网| 在线观看免费视频无码| 欧美怡春院| 成人无码中文字幕| 人人妻人人色| 亚洲制服在线观看| 国产精品欧美综合| 亚洲AV成人无码精品区| 一级内射片在线网站观看| 五月天婷婷在线播放视频免费观看| 天天影视综合网免费观看电视剧国产| 色人人| 亚洲成人精品在线观看| 色欲网址| 日批动态图| 人人操人人操人人操人人操| 日韩av成人| 久久久久久99| 亚洲无码在线观看免费| 韩日美女性爱| 天天色视频| 无码A片| 国产内射在线观看| 一级黄色电影网| 极品久久久| www.黄色片| 韩国精品在线| 无码一区二区三区在线观看| 99热精品国产| 777超碰| 黄色精品网站| 中文字幕精品视频在线观看| 亚洲成人网站免费观看| 亚洲国产精品VA在线看黑人| 婷婷成人在线| 亚洲国产中文字幕在线播放| 欧美婷婷在线| 久碰人妻人妻人妻| 伊人av网| 老鸭窝久久久| 国产一区视频18| 无码毛片在线观看| 91国产人妻| 揄拍成人国产精品视频| www.91超碰在线| 精品久久三级片| 国精品无码一区二区三区在线| 最好看2019中文在线播放电影| 亚洲色图一区二区| 一级黄色av| 思思精品视频| 色就色欧美| 香蕉在线播放| 91视频在线观看免费大全| h视频免费看| 日本中文字幕网| 欧美色色视频| 日韩性生活网| 欧美一级欧美三级在线观看| 大香蕉1024| 男人天堂视频在线观看| 国产棈品久久久久久久久久九秃| 91探花视频在线观看| 91好爽| 黄色资源在线观看| 91视频一区二区三区| 有码中文字幕| 日韩欧美一区二区三区| 欧美爆操视频| 西西人体大胆ww4444图片|