0

我见过的大多数例子都是这样

private int productId;
private String proName;
private double price;

public void **set**ProductId(int productId)
{
    this.productId = productId;
}
public int **get**ProductId()
{
    return productId;
}

public void setProName(String proName)
{
    this.proName = proName;
}
public String getProName()
{
    return proName;
}

public void setPrice(double price)
{
    this.price = price;
}
public double getPrice()
{
    return price;
}

使用 Hibernate 时是否需要这种命名约定?

4

2 回答 2

2

这种命名约定最初是由Java Beans引入的。getXXX属性 (和)的统一命名约定setXXX允许在运行时发现(和访问)框架的 java bean 的属性。由于 Hibernate 可以使用反射访问私有字段,正如 Hibernate如何访问私有字段?,不必遵循此命名约定,但这是一种很好的做法。

于 2013-08-15T18:57:07.603 回答
0

基于Hibernate 3.6 文档

如果这些类遵循一些简单的规则(也称为普通旧 Java 对象 (POJO) 编程模型),那么 Hibernate 效果最好。然而,这些规则都不是硬性要求。事实上,Hibernate 很少假设持久对象的性质。您可以用其他方式表达域模型(例如,使用 java.util.Map 实例树)。

于 2013-08-15T18:42:24.610 回答