第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Neo4J Spring Boot OGM 上的關(guān)系實體中保存子類或數(shù)組列表

在 Neo4J Spring Boot OGM 上的關(guān)系實體中保存子類或數(shù)組列表

倚天杖 2021-10-20 16:15:18
我有一個關(guān)于如何在關(guān)系實體中保存子類或 ArrayList 的查詢?我的問題:當我將數(shù)據(jù)從存儲庫傳遞給 save 調(diào)用以將 Child 作為 Parent 的一部分保存時,沒有問題或錯誤,但是當我在數(shù)據(jù)庫中檢索或查找時,沒有數(shù)據(jù)存在。家長班:@RelationshipEntity(type = "HAS_DATA")public class Parent{private Long id;private Long sequenceId;Set<Child> = new HashSet<>();@StartNodeSomeClass1 someClass1;@EndNodeSomeClass2 someClass2;//Getter and Setters}兒童班:public class Child{Long Id;String name;//Getters and Setters}我如何實現(xiàn)這一目標?
查看完整描述

2 回答

?
森欄

TA貢獻1810條經(jīng)驗 獲得超5個贊

看看AttributeConverter注釋,但是如果您需要關(guān)系上的值集合,請考慮重構(gòu)您的模型,使其成為具有相關(guān)內(nèi)容的節(jié)點。


例子:


這是一個示例屬性轉(zhuǎn)換器(在 Kotlin 中),它在 Neo4j 中將字符串數(shù)組屬性轉(zhuǎn)換為/從字符串數(shù)組屬性轉(zhuǎn)換為 Java 類型。


class RoleArrayAttributeConverter : AttributeConverter<Array<Role>, Array<String>>

{


    override fun toEntityAttribute(value: Array<String>): Array<Role>

    {

        return value.map { Role.valueOf(it) }.toTypedArray()

    }


    override fun toGraphProperty(value: Array<Role>): Array<String>

    {

        return value.map { it.toString() }.toTypedArray()

    }


}


查看完整回答
反對 回復(fù) 2021-10-20
?
斯蒂芬大帝

TA貢獻1827條經(jīng)驗 獲得超8個贊

根據(jù)@Jasper Blues 的建議,我用 Java 創(chuàng)建了自己的轉(zhuǎn)換器?;卮鹞易约旱膯栴},因為我無法在評論中添加這個。


public class ChildConverter implements AttributeConverter<Set<Child>, String> {


ObjectMapper mapper = new ObjectMapper();


@Override

public String toGraphProperty(Set<Child> data) {

    String value = "";

    try {

        value = mapper.writeValueAsString(data);

    } catch (JsonProcessingException e) {

        e.printStackTrace();

    }

    return value;

}


@Override

public Set<Child> toEntityAttribute(String data) {

    Set<Child> mapValue = new HashSet<Child>();

    TypeReference<Set<Child>> typeRef = new TypeReference<Set<Child>>() {

    };

    try {

        mapValue = mapper.readValue(data, typeRef);

    } catch (IOException e) {

        e.printStackTrace();

    }

    return mapValue;

}

}


確保在父類中添加@Convert 注解。


 @Convert(converter = ChildConverter.class)

 Set<Child> = new HashSet<>();


查看完整回答
反對 回復(fù) 2021-10-20
  • 2 回答
  • 0 關(guān)注
  • 157 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號