Java中的OneToMany的使用方法
寫在開頭
使用jhipster聲明的OneToMany在One的一方DTO中是沒有與Many的DTO的映射關(guān)系的, 為了在One的一方DTO中使用Many的DTO, 使用以下三步解決此問題。
步驟
1. OneDTO 中的"mark 1"處為自己寫的一對多的關(guān)系, 此處變量名稱不能與實體One中相應(yīng)的變量名稱一致,否則編譯失敗。
2. OneMapper 中的"mark 2"處 uses屬性添加ManyMapper。
2. OneMapper 中的"mark 3"處使用@Mapping注解聲明 Entity 轉(zhuǎn) DTO 的映射關(guān)系。
Entity
@Entity
@Table(name = "one")
public class One {
...
@OneToMany(mappedBy = "one")
private Set<Many> manys = new HashSet<>();
...
public void setManys(Set<Many> manys) {
this.manys = manys;
}
public Set<Many> getManys() {
return manys;
}
}
@Entity
@Table(name = "many")
public class Many {
...
@ManyToOne
private One one;
}
DTO
public class OneDTO {
...
// mark 1
private Set<ManyDTO> manyDTOS = new HashSet<>();
...
public void setManyDTOS(Set<ManyDTO> manyDTOS) {
this.manyDTOS = manyDTOS;
}
public Set<ManyDTO> getManyDTOS() {
return manyDTOS;
}
}
public class ManyDTO {
...
private Long oneId;
...
public void setOneId(Long oneId) {
this.oneId = oneId;
}
public Long getOneId() {
return oneId;
}
}
Mapper
// mark 2
@Mapper(componentModel = "spring", uses = {ManyMapper.class})
public interface OneMapper extends EntityMapper<OneDTO, One> {
// mark 3
@Mapping(souce = "manys", target = "manyDTOS")
OneDTO toDto(One one);
...
}
@mapper(componentModel = "spring", uses = {OneMapper.class})
public interface ManyMapper extends EntityMapper<ManyDTO, Many>{
...
}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java中File與MultipartFile互轉(zhuǎn)代碼示例
在Java開發(fā)中,當(dāng)需要將本地File對象轉(zhuǎn)換為MultipartFile對象以處理文件上傳時,可以通過實現(xiàn)MultipartFile接口或使用CommonsMultipartFile類來實現(xiàn),本文提供了詳細的轉(zhuǎn)換方法和代碼示例,需要的朋友可以參考下2024-10-10
maven?插件?assembly?打tar.gz包的詳細過程
這篇文章主要介紹了maven插件assembly打tar.gz包的詳細過程,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-06-06
java: 程序包com.fasterxml.jackson.annotation不存在的解決辦法
當(dāng)我們在導(dǎo)入程序之后,系統(tǒng)給出錯誤提示:java: 程序包com.fasterxml.jackson.annotation不存在,本文主要介紹了Java程序包不存在的三種解決方法,需要的朋友可以參考下2024-02-02
基于parameters參數(shù)實現(xiàn)參數(shù)化過程解析
這篇文章主要介紹了基于parameters參數(shù)實現(xiàn)參數(shù)化過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-08-08

