栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java中的OneToMany的使用方法

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java中的OneToMany的使用方法

写在开头

使用jhipster声明的OneToMany在One的一方DTO中是没有与Many的DTO的映射关系的, 为了在One的一方DTO中使用Many的DTO, 使用以下三步解决此问题。

步骤

1. oneDTO 中的"mark 1"处为自己写的一对多的关系, 此处变量名称不能与实体One中相应的变量名称一致,否则编译失败。

2. oneMapper 中的"mark 2"处 uses属性添加ManyMapper。

2. oneMapper 中的"mark 3"处使用@Mapping注解声明 Entity 转 DTO 的映射关系。

Entity

@Entity
@Table(name = "one")
public class One {
  ...  
  @oneToMany(mappedBy = "one")
  private Set manys = new HashSet<>();  
  ...  
  public void setManys(Set manys) {
    this.manys = manys;
  }  
  public Set getManys() {
    return manys;
  }
}

@Entity
@Table(name = "many")
public class Many {
  ...  
  @ManyToOne
  private One one;
}

DTO

public class oneDTO {
  ...
  // mark 1
  private Set manyDTOS = new HashSet<>();
    ...
   public void setManyDTOS(Set manyDTOS) {
    this.manyDTOS = manyDTOS;
  }
  
  public Set 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 {  
  // mark 3
  @Mapping(souce = "manys", target = "manyDTOS")
  oneDTO toDto(One one);
  
  ...
  
}
@mapper(componentModel = "spring", uses = {OneMapper.class})
public interface ManyMapper extends EntityMapper{  
  ...  
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/141160.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号