我从开发人员那里继承了一个项目代码库。 我必须对其进行一些修改。
说我有一张桌子" CARS"有2列
ID | CARNAME
1 | HYUNDAI
2 | FORD
3 | BMW
绑定到Model类" Car":
public Class Car{
@Id
@Column(name="ID")
private Long id;
@Column(name="FORD")
private String carName;
//getters and setters...
}
并在我的代码片段中(比如在一些控制器类中)我必须看看是否 给定的汽车是福特汽车,条件代码就像是
if(thisCar.getCarName()=="FORD")
或
if(thisCar.getId()==2L)
但这会在数据库和应用程序之间产生一些依赖性问题。 如果我冲洗汽车桌或重组它并因此FORD汽车怎么办? 进入主键3 对于字符串" FORD"同样如此。如果明天它改变为" FORDspeed"或者其他的东西。 我必须相应地更改我的代码。
如何使我的代码在这个意义上与数据松散耦合。
答案 0 :(得分:0)
我认为您不应该依赖字段 ID ,因为这可能已经改变了,如您所说。因此,短语if(thisCar.getId()==2L)
稍后可能会有不同的结果,因此您应该避免使用它。但我认为if(thisCar.getCarName()=="FORD")
总是有静态结果,我认为基于面向对象的设计没有任何问题。