2016-06-22 4 views
0

を繰り返しますダッシュボードにはウィジェットのリストがあります。各ウィジェットは1つのダッシュボードに属します。適切なPOJOとして、その後、追加の「Dashwidgets」:これは、「ウィジェット」を追加していますいくつかの理由休止状態ManyToOneは、私は次の関係を管理するためにHibernateを使用しています関係に

{ 
    "Id": 0, 
    "Type": "string", 
    "Name": "string", 
    "User": { 
    "Id": 0, 
    "Username": "string" 
    }, 
    "Widgets": [ 
    { 
     "Id": 0, 
     "Layout": { 
     "Id": 0, 
     "Col": 0, 
     "Row": 0, 
     "Sizex": 0, 
     "Sizey": 0 
     }, 
     "Dashwidgets": {}, 
     "WidgetType": "string", 
     "Resizable": false, 
     "Canpopout": false, 
     "Settings": "string" 
    } 
    ] 
} 

:{}ただし、生成されたPOJOは次のようになります。

オブジェクトを保存すると、DashWidgetsオブジェクトのみが保存されます。

私は間違っていますか?

答えて

0

ウィジェットからmappedByを取り外してください。 `mappedBy 'を追加すると、実際にオブジェクトをChild Entityに保存するコントロールが与えられます。

@OneToMany(cascade = CascadeType.ALL) 
public List<Widget> widgets; 

詳細についてはthisの質問をご覧ください。 `{ "ID":0、 "タイプ": "string" は、 "名前": "string" は、 "ユーザ":{ 「

+0

は、モデルがまだそれを出ている、ことを試みましたID ":0、 "ユーザ名": "文字列" }、 "ウィジェット":[ { "ID":0、 "レイアウト":{ "ID":0、 "COL":0 、 "行":0、 "SIZEX":0、 "SIZEY":0 }、 "dashwidgets":{}、 " widgetType ": "文字列"、 "サイズ変更可能":偽、 "canpopout":偽、 "設定": "文字列" } ] }' – user171943

+0

をオブジェクトを保存する前には、同様に子供に親を設定します。各ウィジェットの 'widget.setDashWidget(ダッシュボード)'。子にsetterメソッドを追加する必要があるかもしれません。あるいは、この親オブジェクトをChildから取り除き、HibernateにParentからの結合テーブルを単独で作成させることができます。 – techtabu

関連する問題