更多精彩博文请关注:听到微笑的博客

一. 插件背景

object-helper 插件是一个日常开发工具集插件,提供丰富的功能,最开始是基于 GenerateO2O 插件开发而来,它提供了对象之间值拷贝代码自动生成的能力,就像这样:

因为它很早之前就停止维护了,新版本IDEA无法使用该插件,所以自己参考它的交互模式,基于新版本API开发了初版 object-helper-plugin插件,再次感谢 GenerateO2O 的作者。

根据日常开发中的痛点,object-helper-plugin 插件不断迭代,提供着我们的开发效率。

欢迎大家在 Issues 中提出宝贵意见,也可以联系我成为一名插件开发者,共同完善插件的功能。

object-helper插件源码:object-helper-plugin

二. 插件下载

方式一

官网下载:ObjectHelper - IntelliJ IDEs Plugin | Marketplace (jetbrains.com)

方式二

插件市场搜索 “ObjectHelper”

方式三

Github下载最新安装包,拖入IDEA即可:object-helper-plugin

二. 插件功能

2.1 对象复制代码生成

有些场景下,我们需要快速写一个对象值复制的方法,我们只需要写一个空方法,就像这样:

pulibc User dtoToModel(UserDTO userDTO){

}

在方法内部使用 Alt+Insert 快捷键,点击 Object Copy Method 就可以自动生成对象拷贝的代码。

Alt+Insert 是IDEA默认快捷键,如果无效,可以在settings->keymap中搜索“Generate”关键字查看具体的快捷键:

2.2 Class类转JSON字符串

有时候我们写接口文档时,或者和第三方对接接口格式时,如果我们已经有了接口返回对象结构,就不需要Mock数据,手动转成JSON了,只需要鼠标轻轻一点就可完成:

2.3 Class类转 Thrift IDL

有些公司的RPC框架可能是基于Thrift开发的,有些场景下我们定义好WEB接口后,还需要将类似的结构转成IDL语言再写一遍,有了插件的帮助,小手点一下就能完成:

2.4 Class类转XML字符串

三. 插件配置

因为插件功能比较杂,大家可以自定义开启其中常用的功能:

File->settings->Tools->Object Helper 即可进入插件的配置页面

四. 未来功能支持计划及优化

4.1 未来支持功能

  1. Class 转 Proto Buffer IDL
  2. All Setter

4.2 待优化点

  1. Class转XML多模式,以及循环依赖检测
  2. Class转JSON、Class转XML功能支持数据类型默认值设定,以及根据字段名称,智能动态生成默认值。
  3. 菜单分组展示

安利一个好用的IDEA插件 object-helper-plugin的更多相关文章

  1. 安利一个十分实用的IDEA插件--RestfulToolkit

    官网链接:http://plugins.jetbrains.com/plugin/10292-restfultoolkit,英汉双语的帮助文档. 一套 RESTful 服务开发辅助工具集. 1.根据 ...

  2. 开源一个跨平台运行的服务插件 - TaskCore.MainForm

    本次将要很大家分享的是一个跨平台运行的服务插件 - TaskCore.MainForm,此框架是使用.netcore来写的,现在netcore已经支持很多系统平台运行了,所以将以前的Task.Main ...

  3. 一个强大的jquery分页插件

    点击这里查看效果 这个分页插件使用方便,引用keleyidivpager.js和keleyidivpager.css文件,然后在htm(或者php,aspx,jsp等)页面中对分页总数,参数名,前缀后 ...

  4. 大流量网站性能优化:一步一步打造一个适合自己的BigRender插件

    BigRender 当一个网站越来越庞大,加载速度越来越慢的时候,开发者们不得不对其进行优化,谁愿意访问一个需要等待 10 秒,20 秒才能出现的网页呢? 常见的也是相对简单易行的一个优化方案是 图片 ...

  5. 自己改写了一个图片局部放大的jquery插件页面里面的html代码少了,同一个页面可以调用多个

    自己改写了一个图片局部放大的jquery插件页面里面的html代码少了,同一个页面可以调用多个,兼容ie8以上浏览器,别忘了引用jquery,我用的jquery/1.11.0/其他版本没有测试,另外需 ...

  6. 安利一个vps,7美元/年。

    黑色星期五.给大家安利一个vps,7美元/年.配置如下:2 个虚拟化 CPU 2 GB (2048 MB) 专属内存 50 GB RAID-10 受保护硬盘存储 3000 GB (3TB) 月流量 1 ...

  7. 安利一个很火的 Github 滤镜项目

    安利一个很火的 Github 滤镜项目 园长 1 个月前 简评:通过深度学习,一秒钟让你的照片高大上,这是康奈尔大学和 Adobe 的工程师合作的一个新项目,通过卷积神经网络把图片进行风格迁移.项目已 ...

  8. 利用HttpWebRequest模拟表单提交 JQuery 的一个轻量级 Guid 字符串拓展插件. 轻量级Config文件AppSettings节点编辑帮助类

    利用HttpWebRequest模拟表单提交   1 using System; 2 using System.Collections.Specialized; 3 using System.IO; ...

  9. 一个简单的MariaDB认证插件demo

    代码地址如下:http://www.demodashi.com/demo/13076.html 一.前言 众所周知(其实可能很多人不知道)MariaDB支持插件认证.在MariaDB中新建用户,常见的 ...

  10. [转载]一个支持Verilog的Vim插件——前言

    原文地址:一个支持Verilog的Vim插件--前言作者:hover 随着设计复杂度的增加,在书写代码中枯燥的重复性的劳动会越来越多.例如,例化若干个有上百个端口的子模块,这个工作没有任何创造性可言, ...

随机推荐

  1. 构筑立体世界,AR Engine助力B站会员购打造沉浸式营销

    随着购物场景的逐渐多元化,越来越多电商平台把线下购物体验搬到线上,运用AR技术,跨越空间距离,帮助用户在购买前"体验"商品,增强购买意愿. 哔哩哔哩会员购(后称会员购)是B站于20 ...

  2. Qt搜索本机网卡对应网段的在线设备

    需求:销售给我的需求是找出哪些IP是没有被占用的,所以我要先找出已经被占用的IP 项目是Qt开发的,所以在网上搜索了下,搜索到的实现方式都是:QHostInfo::lookupHost,但是这种方式, ...

  3. 鸿蒙智联生态产品《接入智慧生活App开发指导》(官方更新版)

    原文:https://mp.weixin.qq.com/s/BDC-12aiZz2EhtjYLR7QIg,点击链接查看更多技术内容. 在HarmonyOS Connect生态产品应用开发过程中,很多开 ...

  4. nginx重新整理——————反向代理[五]

    前言 简单整理一下反向代理. 正文 为什么要反向代理呢? 其实这个问题也是相对来说比较好理解的. 一个就是解耦,为什么这么说呢,就是将原本应用的一部分剥离出来,比如说限制流量,如果在程序中写那么相比会 ...

  5. 特殊border的样式 -- CSS3实现三种切角效果

    效果一: 代码:<div class="cornerCut">corner cutcorner cutcorner cutcorner cut</div> ...

  6. logging模块简介python

    1 logging模块简介 logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级.日志保存路径.日志文件回滚等:相比print,具备如下优点: 可以通过设置不同 ...

  7. 如何使用Arthas提高日常开发效率?

    简介: 1. Arthas有什么功能,怎么用,请看:Arthas使用手册 2. Arthas命令比较复杂,一个帮助生成命令的IDEA插件:arthas idea plugin 使用文档 3. 基于Ar ...

  8. 钉钉宜搭亮相“第二届ISIG中国产业智能大会”:云钉低代码,构建企业酷应用

    ​简介:低代码年度行业盛会!钉钉宜搭创始人叶周全受邀出席并发表主题演讲. 12月8日,由中国电子技术标准化研究院指导,RPA中国.LowCode低码时代.信创中国联合举办的"第二届ISIG中 ...

  9. 数据库误操作后悔药来了:AnalyticDB PostgreSQL教你实现分布式一致性备份恢复

    ​简介: 本文将介绍AnalyticDB PostgreSQL版备份恢复的原理与使用方法. 一.背景 AnalyticDB PostgreSQL版(简称ADB PG)是阿里云数据库团队基于Postgr ...

  10. 非技术 对以后各大应用功能与 AI 助手的思考

    本文记录我对于 AI 助手在未来给各大应用或网站或设备带来的影响的思考 结论:未来的各大应用或网站或者是设备,都不会出现满屏的眼花缭乱的功能,取代的是各自有一个专属的 AI 助手,通过 AI 助手与人 ...