java 8链接和数据库实体

时间:2015-12-08 15:44:25

标签: java eclipse hibernate

传统上我总是由Hibernate实体制作如下:

@Entity
@Table(name = "my_table")
@SuppressWarnings("serial")
public class MyEntity extends Serializable
{
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
private long id;

@Column(name = "name")
private String someName;

@Column(name = "description")
private String description;

和吸气者和制定者看起来像:

public String getSomeName()
{
    return someName;
}

public void setSomeName(String someName)
{
    this.someName = someName;
}

public String getDescription()
{
    return description;
}

public void setDescription(String description)
{
    this.description = description;
}

接下来是Eclipse生成的hashcode,equals和toString方法。

现在我被要求将我的二传手改为:

 public MyEntity setSomeName(String someName)
 {
     this.someName = someName;
     return this;
 }

public MyEntity setDescription(String description)
{
    this.description = description;
    return this;
}

这是我们可以做的链接:

MyEntity entity = new MyEntity().setSomeName("x").setDescription("y");

这不会破坏我对CRUD的单元测试,DAO似乎仍能正常工作。

令人讨厌的是,使用Eclipse,我可以很快地扼杀getter / setter,但现在我需要用“return this;”来调整我的所有setter。

首先......我不确定,但这是java 8的新常态吗?这会对长期错误产生任何不利影响,这是否会占用更多内存,或者这是否会高效,我应该这样做?

自从JDK 1.3和过去的15年以来,我一直在做Java,我知道每一项新技术的进步都有它的怪癖。我只是想知道这里有没有?

谢谢!

0 个答案:

没有答案