java - 如何使用注解映射Set集合的simplevalue类型

标签 java hibernate

谁能解释一下如何通过使用注释映射而不使用一对多关系来使用 Set 的简单值类型。我在下面的代码中展示了示例。在此代码中,我有人名和人宠物名,这里人宠物名是集合的简单值类型。我想映射到一个表中的人名和另一个表中的宠物名。

private static final long serialVersionUID = 1L;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;
    private String name;



    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    private Set<String> petname;

    public Set<String> getPetname() {
        return petname;
    }

    public void setPetname(Set<String> petname) {
        this.petname = petname;
    }





    public boolean addPetNames(String a) {

        return petname.add(a);

    }

最佳答案

JPA 注释的工作方式如下:(我认为这是 self 解释)

@ElementCollection
@CollectionTable(
    name="PET_NAMES",
    joinColumns=@JoinColumn(name="PERSON_ID")
)
@Column(name="PET_NAME")
private Set<String> petname;

关于java - 如何使用注解映射Set集合的simplevalue类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22193049/

相关文章:

java - 组织.hibernate.QueryException : Not all named parameters have been set:[]

java - ORM:非主键连接列上的 OneToOne 映射 - ISBN 映射的书籍和库存

java - Maven 忽略 "maven-compiler-plugin"要求

java - 如何在用户界面中使用 SOAP Web 服务?

javascript - 如何在同一项目中为 java 和 javascript 配置 Sonarqube 扫描器

java - 使用 Jackson 将 JSON 反序列化为 JPA 托管实体

java - 如何在hibernate中实现触发器

java - "run ' ${appserver.home}/bin/startup.bat'”是什么意思?

java - 如何在 Kotlin 中从 Android 应用程序发送文本和图像?

java - 连接关闭后不允许进行任何操作