netbeans可以为映射自动生成正确的hashCode()和equals()方法吗?

时间:2016-07-07 09:57:38

标签: java hibernate netbeans

我正在创建两个对象类的多对多映射。我是否需要编写hashCode()equals()方法;如果是这样,netbeans会自动生成代码帮助吗?

3 个答案:

答案 0 :(得分:8)

是的,它可以!

只需在创建对象的类中单击鼠标右键,然后选择插入代码即可。一个标题为" Generate"将弹出各种选项,其中包括equals()和hashCode(),选择它和presto,NetBeans为您生成代码覆盖。测试equals方法,这次会有效。

NB。当你选择" equals()和hashCode()"出现一个对话框,只需选中要处理的所有变量的双方框。见下图:

Generate equals() and hashCode on NetBeans

答案 1 :(得分:0)

是的,您可以使用IDE生成的哈希码来比较两个实例。你的情况就足够了,更重要的是equals方法,注意相等的参数。自动生成的代码将比较所有参数,但您可能只需要很少的参数来唯一地识别它。

假设您需要查看从DB读取的记录是否属于同一实体,只需比较equals方法中的主键即可。选择一个平等标准完全由你自行决定。

答案 2 :(得分:0)

在NetBeans 8.2中,右键菜单选项的名称为“插入代码”,右键单击该类或单击Alt-Insert后,选择“等于和hashCode ...”

Insert Code

equals and hashCode