0

在处理非规范化(遗留)数据库表时,您有如下列:

price_1, price_2, price_3, ..., price_10

将此类列映射到 java 集合(例如 List)而不是将它们映射到相应的 price1、price2、... 属性的最有效和最干净的方法是什么。

有没有一种不涉及 UserTypes 的简单方法。

我说的是驻留在同一张表上的列,而不是多个实体之间通常的一对多关系。

4

1 回答 1

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 类对其余代码隐藏实际结构。您可以将所有价格作为一个集合或单独或任何合适的方式访问。

于 2012-10-15T15:32:16.673 回答