From a5197ea1818688c5532d8e303f8766160d481607 Mon Sep 17 00:00:00 2001 From: lzy <963565242@qq.com> Date: Tue, 23 Aug 2022 15:18:15 +0800 Subject: [PATCH] format code --- README.MD | 28 +++++++++++-------- .../mysql/impl/MySqlDataResultImpl.java | 10 +++++-- .../easydatabaseexport/enums/UpdateEnum.java | 1 + .../easydatabaseexport/ui/IndexJavaFrame.java | 14 +--------- .../util/FileOperateUtil.java | 4 +-- .../easydatabaseexport/util/WordReporter.java | 15 ++++++++-- version/VERSION.MD | 15 +++++++--- 7 files changed, 52 insertions(+), 35 deletions(-) diff --git a/README.MD b/README.MD index 560a561..d0c1ff1 100644 --- a/README.MD +++ b/README.MD @@ -16,18 +16,22 @@

## 表结构导出Excel、导出Word + 该工具主要用于导出excel、word,方便快速生成《数据库结构文档》,同时可以快速查看表的结构和相关信息 该工具永久免费,欢迎大家体验! 下载地址:右侧【发行版】中下载最新版 其他历史版本:[下载](https://wwr.lanzoui.com/b02c7c0cb) 【密码:1111】 -### 使用手册 +### 使用手册 + [《EasyDataBaseExport说明文档》](https://www.likethewind.top/) -### 运行环境要求 - * 1.8.0_151+ (建议最好1.8.0_151以上的版本,因为151版本为JVM启用无限制强度管辖策略) +### 运行环境要求 + +* 1.8.0_151+ (建议最好1.8.0_151以上的版本,因为151版本为JVM启用无限制强度管辖策略) + +### 数据库支持 -### 数据库支持 - ✔ MySQL - ✔ Oracle - ✔ SqlServer @@ -36,13 +40,13 @@ - ✔ 人大金仓 - ✔ DB2 +### 文档支持 -### 文档支持 - ✔ Word - ✔ Excel - ### 功能速览 + > 注:图中涉及资源均来源于网络,仅用于展示工具功能,版权归其作者所有。 + 连接 @@ -61,7 +65,7 @@ 配置位置如下: ![在这里插入图片描述](https://img-blog.csdnimg.cn/8f7ecf0270fc46d69fad54fc4c3a9956.gif) -### 项目结构 +### 项目结构 ```md EasyDataBaseExport @@ -79,25 +83,27 @@ EasyDataBaseExport └── `util` 工具 ``` -### 运行方式 +### 运行方式 * 1.双击 * 2.java -jar *.jar * 3.运行`EasyDataBaseExportMain`的main方法 -### 编译和打包 +### 编译和打包 + ![img.png](https://gitee.com/lzy549876/EasyDataBaseExport/raw/main/image/maven.png) 双击运行`assembly:assembly`进行打包 注:由于采用的部分驱动未上传maven仓库 若打包报错,提示找不到包,请先运行 `mvn install` ![img.png](https://gitee.com/lzy549876/EasyDataBaseExport/raw/main/image/install.png) -### 下载 + +### 下载 蓝奏云:[https://wwr.lanzoui.com/b02c7c0cb](https://wwr.lanzoui.com/b02c7c0cb) 密码:1111 项目地址:[https://gitee.com/lzy549876/EasyDataBaseExport](https://gitee.com/lzy549876/EasyDataBaseExport) -### 联系方式 +### 联系方式 QQ: 963565242 Mail: 963565242@qq.com diff --git a/src/main/java/com/easydatabaseexport/database/mysql/impl/MySqlDataResultImpl.java b/src/main/java/com/easydatabaseexport/database/mysql/impl/MySqlDataResultImpl.java index 6b259ee..634a3e0 100644 --- a/src/main/java/com/easydatabaseexport/database/mysql/impl/MySqlDataResultImpl.java +++ b/src/main/java/com/easydatabaseexport/database/mysql/impl/MySqlDataResultImpl.java @@ -30,7 +30,13 @@ import java.sql.ResultSet; import java.sql.ResultSetMetaData; import java.sql.SQLException; import java.sql.Statement; -import java.util.*; +import java.util.ArrayList; +import java.util.Comparator; +import java.util.HashMap; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.Vector; import java.util.stream.Collectors; /** @@ -331,7 +337,7 @@ public class MySqlDataResultImpl extends AbstractDataResultImpl implements DataR CommonDataBaseType.CON_DATABASE_TABLE_MAP = list.parallelStream().collect(Collectors.groupingBy(TableType::getTableSchema, HashMap::new, Collectors.collectingAndThen(Collectors.toList(), v -> v.stream().sorted(Comparator.comparing(TableType::getTableName)).collect(Collectors.toList()) - ))); + ))); } /** diff --git a/src/main/java/com/easydatabaseexport/enums/UpdateEnum.java b/src/main/java/com/easydatabaseexport/enums/UpdateEnum.java index afdefdc..726f596 100644 --- a/src/main/java/com/easydatabaseexport/enums/UpdateEnum.java +++ b/src/main/java/com/easydatabaseexport/enums/UpdateEnum.java @@ -2,6 +2,7 @@ package com.easydatabaseexport.enums; /** * UpdateEnum + * * @author lzy * @date 2022/5/20 13:44 **/ diff --git a/src/main/java/com/easydatabaseexport/ui/IndexJavaFrame.java b/src/main/java/com/easydatabaseexport/ui/IndexJavaFrame.java index dc751d5..2b38bca 100644 --- a/src/main/java/com/easydatabaseexport/ui/IndexJavaFrame.java +++ b/src/main/java/com/easydatabaseexport/ui/IndexJavaFrame.java @@ -18,19 +18,7 @@ import lombok.SneakyThrows; import lombok.extern.java.Log; import org.apache.commons.codec.binary.Base64; -import javax.swing.JButton; -import javax.swing.JCheckBox; -import javax.swing.JComboBox; -import javax.swing.JFrame; -import javax.swing.JLabel; -import javax.swing.JMenuBar; -import javax.swing.JOptionPane; -import javax.swing.JPanel; -import javax.swing.JPasswordField; -import javax.swing.JSplitPane; -import javax.swing.JTextField; -import javax.swing.SwingUtilities; -import javax.swing.ToolTipManager; +import javax.swing.*; import java.awt.Cursor; import java.awt.Dimension; import java.awt.event.ActionListener; diff --git a/src/main/java/com/easydatabaseexport/util/FileOperateUtil.java b/src/main/java/com/easydatabaseexport/util/FileOperateUtil.java index 100faef..ccacc3b 100644 --- a/src/main/java/com/easydatabaseexport/util/FileOperateUtil.java +++ b/src/main/java/com/easydatabaseexport/util/FileOperateUtil.java @@ -280,9 +280,9 @@ public class FileOperateUtil { } /*public static void main(String[] args) { - *//*writeData("E:\\MySQLTools-main\\src\\main\\resources\\template.ini", "sys", "1111=1"); + writeData("E:\\MySQLTools-main\\src\\main\\resources\\template.ini", "sys", "1111=1"); writeData("E:\\MySQLTools-main\\src\\main\\resources\\template.ini", "theme", "1"); - writeData("E:\\MySQLTools-main\\src\\main\\resources\\template.ini", "theme", "2");*//* + writeData("E:\\MySQLTools-main\\src\\main\\resources\\template.ini", "theme", "2"); System.out.println(getLocalMd5File("C:\\Users\\Administrator\\Desktop\\MySQLToWordOrExcel\\target\\EasyDataBaseExport-0.0.1-SNAPSHOT-jar-with-dependencies.jar")); }*/ } diff --git a/src/main/java/com/easydatabaseexport/util/WordReporter.java b/src/main/java/com/easydatabaseexport/util/WordReporter.java index 72e1ed3..7dca945 100644 --- a/src/main/java/com/easydatabaseexport/util/WordReporter.java +++ b/src/main/java/com/easydatabaseexport/util/WordReporter.java @@ -6,12 +6,21 @@ import com.easydatabaseexport.log.LogManager; import com.mysql.cj.util.StringUtils; import lombok.extern.java.Log; import org.apache.poi.xwpf.usermodel.*; -import org.openxmlformats.schemas.officeDocument.x2006.sharedTypes.STVerticalAlignRun; import org.openxmlformats.schemas.wordprocessingml.x2006.main.*; -import java.io.*; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; import java.math.BigInteger; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import java.util.Objects; import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.stream.Collectors; diff --git a/version/VERSION.MD b/version/VERSION.MD index 35bdd0f..9837131 100644 --- a/version/VERSION.MD +++ b/version/VERSION.MD @@ -1,5 +1,5 @@ - ### version 0.1.0 + * 【新增】新增oracle连接支持 * 【界面】界面调整 => `mysql`连接时,数据库非必填;`oracle`连接时,数据库默认为`orcl` * 【功能】从navicat导出ncx文件,然后导入连接到本工具;增加保存配置、还原主题(有bug)后,自动重启功能 @@ -9,12 +9,14 @@ * 另:谢谢大家的支持和建议 ### version 0.0.9 + * 【图标】优化图标显示 * 【优化】代码整体重构(主要是为开源做准备,嘻嘻),适应后期不同数据库的连接 * 【bug】修复若干bug * 【功能】增加导出配置项;导出word时,根据对应配置,选择是否导出表的索引 ### version 0.0.8 + * 【图标】优化图标显示 * 【优化】不再缓存表结构信息,修改为实时查询 * 【bug】修复由于是缓存,用户库(删除)、表(修改删除)、字段(新增修改删除)等不会出现更新的问题(另:新增表时,没有实时刷新,暂缓优化(meiyouhaobanfa)) @@ -22,6 +24,7 @@ * 【功能】多数据库导出,形成word文档目录 ### version 0.0.7 + * 【界面】主题赋予名称 * 【优化】深度优化连接速度,增加进度条等待,提升用户体验 * 【新增】新增本地配置持久化(下次直接带出),将会自动保存每次连接成功的连接配置 @@ -29,16 +32,17 @@ * 【性能】缓存提升操作流畅度,优化工具性能 ### version 0.0.6 + * 【界面】新增更换主题功能 * 【优化】首页连接数据库失败时,原因信息完整展示;代码重构,优化速度 -* 【新增】单击左侧树,查看表结构;双击树,查看表数据 +* 【新增】单击左侧树,查看表结构;双击树,查看表数据 ### version 0.0.5 + * 删减 【查询】删除sql查询功能(说实话市面上很多工具sql查询功能都挺好用的,感觉sql查询功能有点多余...) * 优化 - 【界面】细节调整,两侧不可移动,但增加伸缩小按钮 - 【左侧】左侧的树可以直接选择库 + 【界面】细节调整,两侧不可移动,但增加伸缩小按钮 【左侧】左侧的树可以直接选择库 【细节】增加icon图标 * 新增 【功能】word导出功能加入目录自动生成(Microsoft Office测试通过,WPS可以手动生成目录结构)注:打开word时会提醒更新目录,点击是! @@ -47,16 +51,19 @@ 【word】word导出按顺序导出 ## version 0.0.4 + * 【连接问题】修复连接过长导致重连的问题 * 【界面】优化左侧树结构UI和整体UI修正 * 【代码】代码重构,优化加载速度 * 【导出】支持多表excel、word导出 ## version 0.0.2 + * 1.单库展示修改为多库展示,单节点 -> 树结构 * 2.word导出失败问题修复 ## version 0.0.1 + * 1.支持展示指定数据库的所有表 * 2.支持查看表信息展示 * 3.支持表字段展示 -- Gitee