当前位置: 首页 > news >正文

JAVA-文档工具screw-gui

前言

为什么萌生了写文档工具得想法,因为在项目开发得过程中,经常需要补充一些文档,比如数据库文档、详细设计文档等等,文档与项目相绑定,在项目需求新增或变更时,文档也需要反反复复得修改。
在这里插入图片描述

1. 数据库文档工具

Screw 是个不错sdk, 可以方便得生成数据库文档 。

  • 支持maven插件方式构建文档
  • 支持main方法方式生成文档

不管什么方式,还是跟项目相绑定,有时候想写文档得时候,不太关注程序。不想单独启动IDE只是为了运行生成文档。 不想使用Navicat 特意查看数据库信息,所以构建了该小工具。

1.1 功能简介

目前只支持 mysql和sqlite3
常用信息默认已经初始化,只需要修改保存目录和文件名称即可
连接测试:验证数据库信息是否正确
预览库: 查看数据表信息和表结构
备份: 保存数据库连接信息
历史备份:加载历史数据库连接信息,内置删除和编辑功能

ps: 第二次生成时 ,文件目录和名称未修改,若文件已在word或wps打开,因为文件被占用所以生成失败

1.2 使用示例

在这里插入图片描述

1.3 补充说明

  • QA: screw 支持多个数据库, 为什么工具不支持
  1. 因为平时工作只用mysql, 而且版本为5.7,所以maven依赖中只添加了mysql依赖
      <dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.29</version></dependency>
  1. 增加screw支持的数据库, screw-swing -->pom.xml 添加依赖, 打包即可

2. swagger文档工具

在开发时经常使用swagger 文档,比较好用得算 Knife4j。swagger2 后来又升级迭代为openApi3,常用注解变更挺大,所以需要写2种方式parser转换器,该工具得初衷也只是本地不启动服务得同时,直接访问测试环境得API接口就可以生成文档。

2.1 功能简介

  1. 选择API类型
  2. 修改保存目录和文件名称
  3. 填写swagger地址,http开头则使用get方法请求json信息 或直接填写json信息。
  4. 生成即可

    ps: 第二次生成时 ,文件目录和名称未修改,若文件已在word或wps打开,因为文件被占用所以生成失败

2.2 使用示例

在这里插入图片描述

1.3 补充说明

  • QA: 文档格式不喜欢,怎么自定义
    模板基于beetl 设置, 找到screw-swing–>resources–>templates–>word.btl . 在这里插入图片描述

3.如何下载

3.1 项目地址

项目已上传至码云:码云screw-gui

  • build 目录可以下载可执行jar和exe (免安装)
    在这里插入图片描述

3.2 模块依赖关系

依赖
依赖
依赖
screw-gui
note-swing-db
note-service-toolkit
note-swing-core

3.3 补充说明

QA: 为什么简单的工具, 但是项目这么臃肿
note-开头的工程 ,都是个人项目基础依赖, 因为有时候在写其他的工具的时候用到. 但是如果不提供这些工程,你无法在IDE中顺利编译. 当然可以使用lib形式引用, 使项目看起来更简洁。

4. 其他说明

  • QA: 本地安装java环境但是无法运行
    该程序基于jdk1.8+和swing开发,java版本可能过低。 exe4j打包时寻找环境变量顺序如图,找不到环境变量则无法运行。
    在这里插入图片描述

  • QA: 是否可以本地不安装java环境并运行工具
    下载jar包,使用exe4j 打包exe时内嵌jre ,可以在未安装java环境的系统中运行,但是因为jre的大小,文件大小会从6MB -->160MB左右

  • QA: 非windows系统如何使用
    java -jar screw-gui.jar 或者使用工具打包为相应系统可执行程序

http://www.lryc.cn/news/34128.html

相关文章:

  • 开源鸿蒙南向嵌入学习笔记——NAPI框架学习(一)
  • Spring - Spring框架概述面试题总结
  • 学习python好就业么
  • 瑞幸咖啡的最终目标并不是做国内市场大哥
  • GPT 模型介绍 | GPT3 / GPT3.5 + Flask | Github源码链接
  • 蓝桥杯入门即劝退(二十六)组合问题(回溯算法)
  • 现代卷积神经网络(ResNet)
  • PTA:L1-019 谁先倒、L1-020 帅到没朋友、L1-021 重要的话说三遍(C++)
  • STL常见容器之set/multiset、map/multimap
  • ThreadLocal 实现原理
  • BUUCTF [羊城杯 2020]easyre 题解
  • 网络协议(十二):HTTPS(SSL/TLS、TLS1.2的连接)
  • 九九乘法表--课后程序(Python程序开发案例教程-黑马程序员编著-第3章-课后作业)
  • 在超算上安装文件树命令tree
  • 论文投稿指南——中文核心期刊推荐(经济管理)
  • 在vue中如果computed属性是一个异步操作怎么办?
  • SRP合批问题
  • 蓝牙5.1低功耗SOC 私有协议2.4GHz芯片HS6621
  • 数据库连接池
  • Arrays-sort-的用法
  • 华为OD机试真题Java实现【寻找相同子串】真题+解题思路+代码(20222023)
  • 性能指标 确定性能目标 性能场景设计
  • ENVI_Classic:快速入门_菜单栏常见功能的基本介绍
  • 【深度探讨】公共部门在选择区块链平台时要考虑的6个方面
  • 基于阿里云物联网平台设计的实时图传系统_采用MQTT协议传输图像
  • 42-Golang中的单元测试
  • python实现k_means聚类
  • 【批处理脚本】-3.3-exit命令详解
  • 如果读了我2011年求职前端开发的酸爽经历,希望你可以鼓起勇气继续向前
  • PTA:L1-016 查验身份证、L1-017 到底有多二、L1-018 大笨钟(C++)