热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

wsdl文档中的soap:address的生成规则_BAT大牛都在使用的数据库文档生成插件,不来看一下?...

一、概述在企业级开发中、我们经常会有编写数据库表结构文档的时间付出,从业以来,待过几家企业,关于数据库表结构文档状态:要么没

一、概述

在企业级开发中、我们经常会有编写数据库表结构文档的时间付出,从业以来,待过几家企业,关于数据库表结构文档状态:要么没有、要么有、但都是手写、后期运维开发,需要手动进行维护到文档中,很是繁琐、如果忘记一次维护、就会给以后工作造成很多困扰、无形中制造了很多坑留给自己和后面接手的人。之前有一段时间开发了一个项目,是那种开发完后后期补充文档的。写数据库文档的时候特别恶心,需要对着数据库中的表和表字段。当表特别多的时候,眼睛都会看花。不知道大家是否有过这种经历,我当时是采取笨方法一个表一个字段写的,恶心坏了。最近在github上发现了一个数据库文档插件,挺不错的,介绍给大家,住大家脱离数据库文档编写的苦海。

二、插件介绍

  1. screw自动生成数据库文档
  2. 支持多种格式文档:html、word和markdown
  3. 支持多种类型的数据库:MySQL、MariaDB、TIDB、Oracle、SqlServer、PostgreSQL和Cache DB

三、插件运用

  1. 在数据库中新建表格(没有具体含义,纯粹是为了演示)

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for account_type
-- ----------------------------
DROP TABLE IF EXISTS `account_type`;
CREATE TABLE `account_type` (
  `id` tinyint unsigned NOT NULL COMMENT '主账号 0, 附属账号 1',
  `type` varchar(50) DEFAULT '主账号',
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='账户类型字典表';

-- ----------------------------
-- Table structure for iap_order
-- ----------------------------
DROP TABLE IF EXISTS `iap_order`;
CREATE TABLE `iap_order` (
  `transaction_id` varchar(200) NOT NULL COMMENT '交易方式',
  `principal_id` bigint unsigned DEFAULT NULL COMMENT 'userId可能为null',
  `product_id` bigint unsigned DEFAULT NULL COMMENT 'product id',
  `apple_id` bigint unsigned DEFAULT NULL COMMENT 'apple id',
  `receipt_data` longtext COMMENT '完整的receipt',
  `platform` varchar(20) DEFAULT NULL COMMENT '平台',
  `status` tinyint unsigned DEFAULT '0' COMMENT '订单状态 ',
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  PRIMARY KEY (`transaction_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='IAP订单';

-- ----------------------------
-- Table structure for points_rule
-- ----------------------------
DROP TABLE IF EXISTS `points_rule`;
CREATE TABLE `points_rule` (
  `id` int NOT NULL AUTO_INCREMENT COMMENT '规则id',
  `member_level` int DEFAULT NULL COMMENT '用户规则适用等级',
  `daily_video_view_points` int DEFAULT NULL COMMENT '每日观看视频积分',
  `daily_article_view_points` int DEFAULT NULL COMMENT '每日阅读文章积分',
  `daily_video_share_points` int DEFAULT NULL COMMENT '每日分享视频积分',
  `daily_article_share_points` int DEFAULT NULL COMMENT '每日分享文章积分',
  `daily_comment_post_points` int DEFAULT NULL COMMENT '每日评论积分',
  `daily_login_points` int DEFAULT NULL COMMENT '每日登陆积分',
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='积分规则';

  1. 在项目中引入插件(可以直接复制过去,开箱即用)


                cn.smallbun.screwgroupId>
                screw-maven-pluginartifactId>
                1.0.4version>
                
                    
                    
                        com.zaxxergroupId>
                        HikariCPartifactId>
                        3.4.5version>
                    dependency>
                    
                    
                        mysqlgroupId>
                        mysql-connector-javaartifactId>
                        8.0.20version>
                    dependency>
                dependencies>
                
                    
                    rootusername>
                    
                    123456password>
                    
                    com.mysql.cj.jdbc.DriverdriverClassName>
                    
                    jdbc:mysql://192.168.1.7:3306/db?useUnicode=true&zeroDateTimeBehavior=convertToNull&autoReconnect=truejdbcUrl>
                    
                    HTMLfileType>
                    
                    falseopenOutputDir>
                    
                    freemarkerproduceType>
                    
                    db数据库表说明文档fileName>
                    
                    表和字段说明description>
                    
                    1.0.0.0version>
                    
                    数据库文档title>
                configuration>
                
                    
                        compilephase>
                        
                            rungoal>
                        goals>
                    execution>
                executions>
            plugin>

  1. 调用screw插件
8607234b7d86c5215a5ae70c4b653817.png
  1. 结果演示

文档生成地址:根目录下doc文件下f959f285e201bf009cc2958c572efeb8.png

html数据库文档演示:9eb9733351a924fa1b964cfb6d59fbbd.png怎么样,是不是眼前一亮,简直和我们日常写的数据库文档一样,你是不是也手痒痒了,来试一下吧!可以节省很多数据库文档编写和维护时间。

四、总结

这个插件使用起来特别方便,开箱即用。但是在创建表格的时候,需要对每个字段和表做好描述。不然输出的数据库文档可能就不能满足我们的使用了。



推荐阅读
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • eclipse学习(第三章:ssh中的Hibernate)——11.Hibernate的缓存(2级缓存,get和load)
    本文介绍了eclipse学习中的第三章内容,主要讲解了ssh中的Hibernate的缓存,包括2级缓存和get方法、load方法的区别。文章还涉及了项目实践和相关知识点的讲解。 ... [详细]
  • 本文讨论了clone的fork与pthread_create创建线程的不同之处。进程是一个指令执行流及其执行环境,其执行环境是一个系统资源的集合。在调用系统调用fork创建一个进程时,子进程只是完全复制父进程的资源,这样得到的子进程独立于父进程,具有良好的并发性。但是二者之间的通讯需要通过专门的通讯机制,另外通过fork创建子进程系统开销很大。因此,在某些情况下,使用clone或pthread_create创建线程可能更加高效。 ... [详细]
  • 电话号码的字母组合解题思路和代码示例
    本文介绍了力扣题目《电话号码的字母组合》的解题思路和代码示例。通过使用哈希表和递归求解的方法,可以将给定的电话号码转换为对应的字母组合。详细的解题思路和代码示例可以帮助读者更好地理解和实现该题目。 ... [详细]
  • c语言\n不换行,c语言printf不换行
    本文目录一览:1、C语言不换行输入2、c语言的 ... [详细]
  • 本文介绍了解决二叉树层序创建问题的方法。通过使用队列结构体和二叉树结构体,实现了入队和出队操作,并提供了判断队列是否为空的函数。详细介绍了解决该问题的步骤和流程。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • 本文详细介绍了如何使用MySQL来显示SQL语句的执行时间,并通过MySQL Query Profiler获取CPU和内存使用量以及系统锁和表锁的时间。同时介绍了效能分析的三种方法:瓶颈分析、工作负载分析和基于比率的分析。 ... [详细]
  • Java中包装类的设计原因以及操作方法
    本文主要介绍了Java中设计包装类的原因以及操作方法。在Java中,除了对象类型,还有八大基本类型,为了将基本类型转换成对象,Java引入了包装类。文章通过介绍包装类的定义和实现,解答了为什么需要包装类的问题,并提供了简单易用的操作方法。通过本文的学习,读者可以更好地理解和应用Java中的包装类。 ... [详细]
  • 李逍遥寻找仙药的迷阵之旅
    本文讲述了少年李逍遥为了救治婶婶的病情,前往仙灵岛寻找仙药的故事。他需要穿越一个由M×N个方格组成的迷阵,有些方格内有怪物,有些方格是安全的。李逍遥需要避开有怪物的方格,并经过最少的方格,找到仙药。在寻找的过程中,他还会遇到神秘人物。本文提供了一个迷阵样例及李逍遥找到仙药的路线。 ... [详细]
  • 海马s5近光灯能否直接更换为H7?
    本文主要介绍了海马s5车型的近光灯是否可以直接更换为H7灯泡,并提供了完整的教程下载地址。此外,还详细讲解了DSP功能函数中的数据拷贝、数据填充和浮点数转换为定点数的相关内容。 ... [详细]
  • 本文介绍了使用哈夫曼树实现文件压缩和解压的方法。首先对数据结构课程设计中的代码进行了分析,包括使用时间调用、常量定义和统计文件中各个字符时相关的结构体。然后讨论了哈夫曼树的实现原理和算法。最后介绍了文件压缩和解压的具体步骤,包括字符统计、构建哈夫曼树、生成编码表、编码和解码过程。通过实例演示了文件压缩和解压的效果。本文的内容对于理解哈夫曼树的实现原理和应用具有一定的参考价值。 ... [详细]
author-avatar
wangyongjieyexuying677
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有