0

非正規化された (レガシー) データベース テーブルを扱う場合、次のような列があります。

価格_1、価格_2、価格_3、...、価格_10

そのような列を対応する price1、price2、... プロパティにマッピングするのではなく、Java コレクション (たとえば、リスト) にマッピングする最も効率的で最もクリーンな方法は何ですか。

UserTypes を使用しない簡単な方法はありますか。

複数のエンティティ間の通常の 1 対多の関係ではなく、同じテーブルに存在する列について話しているのです。

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 に答える