前言

前段时间有小伙伴在群里聊天,说到 Toolkit 下载量到 4.9k 了。就突然想起来,很久没有更新这个插件。

PS:我是用它申请了 License,一般时候使用 Json 格式化功能。

趁着周末,更新了下版本,下面介绍直接介绍更新后的版本。

功能介绍

UI 界面

这次修改最大的就是 UI 界面,基本参考 Doc View 的 UI,全面进行改造,同时对代码也进行的一定程度上的重构。

同时增加快捷键 Control + Shift + T 直接唤起操作面板的功能。

UI 界面调整,以标签页的形式直接展示功能,方便使用。

Json Format

保留原有功能:

  1. 代码格式化;
  2. 压缩为一行;
  3. 移除文本中的转移符(\);
  4. 快捷生成实体类字段。

新增功能:

  1. 快捷复制;
  2. 原生查找。

动图演示:

  • 快捷键打开

  • Json 格式化

  • 压缩 Json 字符串为一行

  • 查找字段

因为直接使用的原生 Editor 当做面板,所以是支持 ⌘ + F 直接局内搜索的。

  • 生成字段

到这里关于 Json 工具的介绍基本就结束了,这也是我在开发过成功经常用到的几个功能。当然快捷复制移除转移符这些功能就需要小伙伴自己研究了。

Copy As Json

当在 Java 类中的时候,可以在右键菜单找到 Copy As Json 这个选项,顾名思义,就是将当前实体类转为 Json 字符串。

如果小伙伴仅仅想使用 Copy As Json 功能,可以在插件商城搜索,有一个插件仅支持将实体复制为 Json。

也有一个注意的地方, 如果 Control + Shift + T 唤起 Toolkit 面板的地方是 Java 实体,这时候 Toolkit 面包会多一个标签页—— Entity Json,可以直接查看当前实体对应的 Json 字符串。

如果焦点不在 Java 实体中,是没有这个标签页的!

其他功能

  • Base64
  • Url Encode/Decode

移除功能

  • 移除 XML 格式化:

XML 格式化使用场景越来越少,毕竟现在基本上不会有使用 XML 作为请求返回报文的了吧!

  • 移除 MyBatis Jump

现在 Toolkit 没有 Mapper 接口和 Mapper XML 之间进行互相跳转,以及检测 Mapper XML 内接口是否重复的功能了。不过可以在插件商城单独下载 MyBatis Jump

MyBatis Jump 仅有跳转和检测功能,如果小伙伴们已经使用了带跳转功能的其他 MyBatis 插件,就没必要额外安装这个了。

总结

以上就是这次的更新,主要是还是更方便工作开发。

比如经常性的对请求入参出参的 Json 字符串进行格式化

比如直接根据文档的 Json 串生成实体,省去一个一个定义字段的痛苦。

比如数据库表扩展字段存放的是Json 格式,需要压缩为一行。(IDEA 的 Control + Shift + J 也可以压缩一行)。

等等。

后续的话可能会有 SQL 格式化、Json 字符串对比(对比参数字段是不是少了)。

最后:

代码已经重构,相对比之前结构还是很清晰的。

有其他需要添加的功能可以提交 PR,也可以留言或者提 Issue。

项目地址

项目地址:https://github.com/liuzhihang/toolkit

插件地址:https://plugins.jetbrains.com/plugin/12384-toolkit

相关推荐

Toolkit 大更新:UI 更美观,用起来更方便!的更多相关文章

  1. 【用户交互】APP没有退出前台但改变系统属性如何实时更新UI?监听系统广播,让用户交互更舒心~

    前日,一小伙伴问我一个问题,说它解决了半天都没解决这个问题,截图如下: 大概楼主理解如下: 如果在应用中有一个判断wifi的开关和一个当前音量大小的seekbar以及一个获取当前电量多少的按钮,想知道 ...

  2. (转).NET 4.5中使用Task.Run和Parallel.For()实现的C# Winform多线程任务及跨线程更新UI控件综合实例

    http://2sharings.com/2014/net-4-5-task-run-parallel-for-winform-cross-multiple-threads-update-ui-dem ...

  3. Android之Handler,举例说明如何更新UI

    方法一:(java习惯,在android不推荐使用) 刚刚开始接触android线程编程的时候,习惯好像java一样,试图用下面的代码解决问题 new Thread( new Runnable() { ...

  4. Android异步处理一:使用Thread+Handler实现非UI线程更新UI界面

    Android应用的开发过程中需要把繁重的任务(IO,网络连接等)放到其他线程中异步执行,达到不阻塞UI的效果. 下面将由浅入深介绍Android进行异步处理的实现方法和系统底层的实现原理. 本文介绍 ...

  5. 转:探讨android更新UI的几种方法

    本文转自:http://www.cnblogs.com/wenjiang/p/3180324.html 作为IT新手,总以为只要有时间,有精力,什么东西都能做出来.这种念头我也有过,但很快就熄灭了,因 ...

  6. 【转】探讨android更新UI的几种方法----不错

    原文网址:http://www.cnblogs.com/wenjiang/p/3180324.html 作为IT新手,总以为只要有时间,有精力,什么东西都能做出来.这种念头我也有过,但很快就熄灭了,因 ...

  7. 关于Handler的理解,子线程不能更新UI的纠正和回调的思考

    开发Android这么久了,总会听到有人说:主线程不能访问网络,子线程不能更新UI.Android的主线程的确不能长时间阻塞,但是子线程为什么不能更新UI呢?今天把这些东西整理,顺便在子线程更新UI. ...

  8. UE4/Unity3d 根据元数据自动生成与更新UI

    大家可能发现一些大佬讲UE4,首先都会讲类型系统,知道UE4会根据宏标记生成一些特定的内容,UE4几乎所有高级功能都离不开这些内容,一般来说,我们不会直接去使用它. 今天这个Demo内容希望能加深大家 ...

  9. Android异步处理系列文章四篇之一使用Thread+Handler实现非UI线程更新UI界面

    目录: Android异步处理一:使用Thread+Handler实现非UI线程更新UI界面Android异步处理二:使用AsyncTask异步更新UI界面Android异步处理三:Handler+L ...

随机推荐

  1. NGK公链存储技术,如何开创应用落地新格局?

    尽管无人预测未来,但是资本的眼光总是那么灵敏,最近几年,国际资本市场纷纷将目光投到了公链市场上.从TPS高点备受抢占,再到DApp生态的不断涌现,再到目前Staking和Defi的新概念生态的不断发力 ...

  2. BGV币与YFI币、YFII币存在着怎样的相关性?

    大多数的玩家并没有长期的打算,而是更倾向于关注短期利好的币种.比如最近在圈内赚足眼球的YFI,之所以能够成为明星角色,并非它的技术和平台,而是因为它在短期就创造了86倍的暴涨.YFI币的暴涨在某种程度 ...

  3. pytorch resnet实现

    官方github上已经有了pytorch基础模型的实现,链接 但是其中一些模型,尤其是resnet,都是用函数生成的各个层,自己看起来是真的难受! 所以自己按照caffe的样子,写一个pytorch的 ...

  4. Differences between Stack and Heap

    本文转载自Differences between Stack and Heap Stack vs Heap So far we have seen how to declare basic type ...

  5. Nifi组件脚本开发—ExecuteScript 使用指南(二)

    Part 2 - FlowFile I/O 和 Error Handling flow File的IO NiFi 的 Flow files 由两个主要部件组成:attributes 和 content ...

  6. 【翻译】Python PEP8编码规范(中文版)

    原文链接:http://legacy.python.org/dev/peps/pep-0008/ item detail PEP 8 Title Style Guide for Python Code ...

  7. oracle startup startup nomount startup mount 的区别

    startup nomount选项启动实例,但不安装 数据库.当数据库以这个模式启动时,参数文件被读取:后台进程和内存结构被启动:但它们不被附加或与数据库的磁盘结构进行通信.当实例处于这个状态时sta ...

  8. Java基础语法:基本数据类型

    Java是一种强类型语言,每个变量都必须声明其类型. Java的数据类型 分为两大类:基本类型(primitive type)和引用类型(reference type). Java的所有八种基本类型的 ...

  9. 使用gitlab构建基于docker的持续集成(三)

    使用gitlab构建基于docker的持续集成(三) gitlab docker aspnetcore 持续集成 构建发布思路: aspnetcore 下的dockerfile编写 发布docker- ...

  10. 安装node环境以及cnpm

    其实我老早以前就发现 node 版本太高也不行 以往的版本下载地址: https://nodejs.org/zh-cn/download/releases/ 下载并解压到 /usr/local/ 下 ...