Builgen 插件——IntelliJ IDEA和Eclipse Java Bean Builder模式代码生成器

Builgen-plugin


##介绍

  • builder模式在越来越多的项目中使用,类似于alibaba fastjson JSONObject.fluentPut(),调用一个方法后返回这个对象本身,特别适合构建一些参数超级多的对象,代码优雅且易读。构建一个对象变成了SomeObject some = new SomeObject().a("a").b("b").c("c").biuld();
  • ItellJ IDEAEclipsegenerator只能生成传统的getter setter,后来IDEA新版本中可以选择builder模式,生成的setter方法不再返回void,而是返回对象本身,属于简易的builder模式,于是自己写了一个插件供参考,提供一种思路。
  • 源码:Builgen-plugin

用法

eclipse

T测试环境:JDK 1.8 + Eclipse Oxygen Release (4.7.0)

  • 复制Builgen_1.0.0.201708310007.jareclipseplugins目录。
  • 删除目录下的eclipse\configuration\org.eclipse.update 文件夹.
  • 重启ecplise加上-clean option(Windows:cmd->cd $dir_eclipse.exe->run cmd 'eclipse -clean')。
  • 创建一个Java Bean
  public class TestBean {
      private String mes;
      private int[] inteters;
      private List<String> strings;
      private List<Map<String, Object>> ddd;
      private boolean klk;
      private double dst;
  }
  • 在左侧文件管理器内右键对应文件,在末尾点击Builgen

    eclipse-rk

  • 文件内容将被替换:

    public class TestBean {
        private String mes;
        private int[] inteters;
        private List<String> strings;
        private List<Map<String, Object>> ddd;
        private boolean klk;
        private double dst;
    
        public TestBean(TestBean testBean) {
            this.mes = testBean.getMes();
            this.inteters = testBean.getInteters();
            this.strings = testBean.getStrings();
            this.ddd = testBean.getDdd();
            this.klk = testBean.getKlk();
            this.dst = testBean.getDst();
        }
    
        public TestBean() {
        }
    
        public static class TestBeanBuilder {
            TestBean testBean;
    
            public TestBeanBuilder() {
                testBean = new TestBean();
            }
    
            public TestBeanBuilder mes(String mes) {
                testBean.setMes(mes);
                return this;
            }
    
            public TestBeanBuilder inteters(int[] inteters) {
                testBean.setInteters(inteters);
                return this;
            }
    
            public TestBeanBuilder strings(List<String> strings) {
                testBean.setStrings(strings);
                return this;
            }
    
            public TestBeanBuilder ddd(List<Map<String, Object>> ddd) {
                testBean.setDdd(ddd);
                return this;
            }
    
            public TestBeanBuilder klk(boolean klk) {
                testBean.setKlk(klk);
                return this;
            }
    
            public TestBeanBuilder dst(double dst) {
                testBean.setDst(dst);
                return this;
            }
    
            public TestBean build() {
                return new TestBean(this.testBean);
            }
        }
    
        public void setDst(double dst) {
            this.dst = dst;
        }
    
        public double getDst() {
            return this.dst;
        }
    
        public void setKlk(boolean klk) {
            this.klk = klk;
        }
    
        public boolean getKlk() {
            return this.klk;
        }
    
        public void setDdd(List<Map<String, Object>> ddd) {
            this.ddd = ddd;
        }
    
        public List<Map<String, Object>> getDdd() {
            return this.ddd;
        }
    
        public void setStrings(List<String> strings) {
            this.strings = strings;
        }
    
        public List<String> getStrings() {
            return this.strings;
        }
    
        public void setInteters(int[] inteters) {
            this.inteters = inteters;
        }
    
        public int[] getInteters() {
            return this.inteters;
        }
    
        public void setMes(String mes) {
            this.mes = mes;
        }
    
        public String getMes() {
            return this.mes;
        }
    }
    

IntelliJ IDEA

测试环境:JDK 1.8 + INTELLIJ IDEA COMMUNITY 2017.2.1

  • 下载Builgen.jar

  • File -> Settings -> plugins -> Install Plugins From Disk,选择下载的jar包并重启IDEA

  • 创建Java Bean在编辑器内右键呼出上下文菜单,然后点击 Generate -> Builgen.

    idea-rk

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值