在处理非规范化(遗留)数据库表时,您可以使用以下列:
price_1,price_2,price_3,...,price_10
将这些列映射到java集合(例如List)的最有效和最干净的方法是什么,而不是将它们映射到相应的price1,price2,...属性。
是否有一种不涉及UserTypes的简单方法。
我说的是位于同一个表上的列,而不是多个实体之间通常的一对多关系。
答案 0 :(得分:0)
在这种情况下我曾经做过的就是创建一个类来封装价格,比如
public class Prices {
Integer price_1;
Integer price_2;
public List<Integer> getAllPrices() {
List<Integer> allPrices = new ArrayList<Integer>();
allPricess.add(price_1);
allPrices.add(price_2);
return allPrices;
}
public Integer getPrice(int priceNumber) {
if (priceNumber == 1) {
return price_1;
}
// etc...
}
}
然后将表中的列映射到各个字段,并使用Java类从其余代码中隐藏实际结构。您可以将所有价格作为集合或单独或任何合适的价格访问。