2
是否可以使用休眠映射數據結構Map<String, int[]>
?該數組通常會有相同的數字條目。如何映射Map <String,int []>?
對不起,可能愚蠢的問題,但我目前不知道如何做到這一點。
是否可以使用休眠映射數據結構Map<String, int[]>
?該數組通常會有相同的數字條目。如何映射Map <String,int []>?
對不起,可能愚蠢的問題,但我目前不知道如何做到這一點。
前段時間我試過做類似的事情,甚至在一些嚴重的文獻研究之後,我無法以通用的方式找到在hibernate中映射數組的方法。
當時我的解決方案是一個包裝類(有超過4個)的字段和訪問器方法,它們允許對這些字段進行類似數組的訪問。
int a;
int b;
int c;
int d;
public int get(int ref) {
switch(ref) {
case 0:
return a;
case 1:
return b;
case 2:
return c;
case 3:
return d;
default:
throw new ArrayIndexOutOfBoundsException();
}
}
如果您有四個以上的變量需要處理,您可以使用反射而不是switch語句。
int [4] s中數字的含義是什麼?這看起來像你實際上想要一個有4個字段的新類。 –
該數組將存儲映射到開發過程步驟的度量值的目標值。例如,在0級中,值應該是2,在1級時應該是5會導致[0] = 2和[1] = 5。該字符串存儲測量的名稱。 我必須糾正自己。這些步驟的數量是恆定的,但可以配置==>所以我們需要一個數組或一個列表。在我們的測試配置中,我們使用了4. 我唯一的想法是用字符串和數組作爲成員來實現一個類,並分別映射這個類。但是有沒有更優雅的方式? – BitSchupser
像「Measurement {String name; int [] data; }'會更多「關係」,然後'Map'在這裏,但它會使名稱的訪問複雜化 - 通常的訪問模式是什麼?如果在可預見的未來出現超過「預期價值」的情況,可能是「Measurement {String name; SortedSet data; } class DataPoint {int value; ...}可能是另一個(非常詳細)的選項。 –