代码之家  ›  专栏  ›  技术社区  ›  Damo

使eclipse等于()/hashcode()使用getter

  •  7
  • Damo  · 技术社区  · 15 年前

    是否可以使默认Eclipse“generate hashcode()and equals()”使用getter而不是字段引用?-我能找到它使用的模板吗?

    我使用的是Hibernate,代理对象只有在使用getter时才是Lazyload,而不是从字段引用中。不断地改变它是一种烦恼。

    最明显的解决方法是自己创建一个模板或编写一个插件——这感觉太过分了。

    编辑:看起来这些是不可配置的。我将把这作为JBoss工具组的一个问题(他们为Hibernate制作了一些插件)。

    4 回复  |  直到 10 年前
        1
  •  7
  •   jb.    15 年前

    这不是一个解决方案,而是解决方案-但您可以尝试生成 equals() ,然后使用“封装字段”重构替换所有字段访问以使用getter/setter(它也在类内工作)。

        3
  •  0
  •   Community dbr    7 年前

    奇怪的是,这些模板似乎根本不可配置。

    你可能想看看 this question . 阿尔索 this blog . 谷歌可能会给你带来更多。

        4
  •  0
  •   kingoleg    10 年前

    我用过 plugin 生成 hashCode() equals() 具有 apache commons lang