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

一. 插件背景

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. Linux程序崩溃自启动方法

    linux进程挂掉后,可以通过配置 systemd 来自动启动服务 1.创建 systemd 服务文件,例如:huyang.service,需要放置在系统文件夹 /etc/systemd/system ...

  2. win7电脑IE浏览器开发人员工具中不能切换浏览器版本

    win7电脑 IE浏览器 开发人员工具,不能切换IE版本 这个是IE浏览器的问题,需要安装个微软件东西就可以解决这个问题了.亲测有效 64位下载地址:https://wwi.lanzoui.com/i ...

  3. Jenkins首次启动慢

    场景描述启动Jenkins后,打开网站,发现一直卡在这个启动页面,慢,很慢,非常慢 解决方法 进入Jenkins的安装目录,找到"hudson.model.UpdateCenter.xml& ...

  4. Grafana 系列-统一展示-5-AWS Cloudwatch 仪表板

    系列文章 Grafana 系列文章 ️强烈推荐 强烈推荐使用 GitHub 上的 monitoringartist/grafana-aws-cloudwatch-dashboards 仪表板.该 re ...

  5. HarmonyOS Codelab 优秀样例——购物应用,体验一次开发多端部署魅力

    一. 样例介绍 本篇Codelab基于自适应布局和响应式布局,实现购物应用在手机.折叠屏.平板不同屏幕尺寸设备上按不同设计显示.通过三层工程结构组织代码,实现一次开发,多端部署 . 手机运行效果如图所 ...

  6. Python 爬虫初探

    准备部分 0x01 爬虫的简介和价值 a. 简介 自动抓取互联网数据的程序,是基础技术之一 b. 价值 快速提取网络中有价值的信息 0x02 爬虫的开发环境 a. 环境清单 Python3.7 开发环 ...

  7. CentOS 6.5快速部署HTTP WEB服务器和FTP服务器

    CentOS 6.5快速部署HTTP WEB服务器和FTP服务器 时间:2014-03-29    来源:服务器之家    投稿:root    点击:210次 [题记]本文使用CentOS 6.5m ...

  8. MVC 下拉选项实现的几种方式

    主要介绍4种方式 硬编码方式: ViewBag.hard_value = new List<SelectListItem>() { new SelectListItem(){Value=& ...

  9. 利用PyTorch训练模型识别数字+英文图片验证码

    利用PyTorch训练模型识别数字+英文图片验证码 摘要:使用深度学习框架PyTorch来训练模型去识别4-6位数字+字母混合图片验证码(我们可以使用第三方库captcha生成这种图片验证码或者自己收 ...

  10. Greenplum Jdbc 调用 SETOF refcursor

    最近公司需要用Greenplum,在调用 jdbc的时候遇到了一些问题.由于我们前提的业务都是使用 sqlserver,sqlserver的 procedure 在前端展示做数据源的时候才用的非常多, ...