Отношение один ко многим - отображение набора <String>в Hibernate - PullRequest
0 голосов
/ 15 марта 2020

У меня следующий класс сущностей:

CategoryBacktrack. java

public class CategoryBacktrack
{
    private String  category;
    private HashSet<String> parentCategories;

    public CategoryBacktrack() { }

    public CategoryBacktrack (String category , HashSet<String> parentCategories)
    {
        this.category = category;
        this.parentCategories = parentCategories;
    }

    public String getCategory()
    {
        return category;
    }

    public void setCategory(String category)
    {
        this.category = category;
    }

    public HashSet<String> getParentCategories()
    {
        return parentCategories;
    }

    public void setParentCategories(HashSet<String> parentCategories)
    {
        this.parentCategories = parentCategories;
    }
}

Set<String> parentCategories имеет отношение один ко многим. Я хочу сделать отображение Hibernate, используя строго аннотации HBM XML и , а не . Моя конфигурация приведена ниже и сопоставлена ​​с фабрикой сеансов в конфигурации Hibernate:

categorybacktrack.hbm. xml

<?xml version = "1.0" encoding = "utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
        "-//Hibernate/Hibernate Mapping DTD//EN"
        "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
    <class name = "db.hibernate.entities.CategoryBacktrack" table = "categories">

        <meta attribute = "class-description">
            This class contains the ids' of the parental categories.
        </meta>

        <id name = "category" type = "string" column = "category">
            <generator class="native"/>
        </id>

        <set name="parentCategories" inverse="true" cascade="all">
            <key column="parent_categories" not-null="true" />
            <one-to-many class="java.lang.String"/>
        </set>

    </class>
</hibernate-mapping>

Intellij предупреждает меня с этим:

Тип значения атрибута «Один ко многим» не должен быть «Строка»

Я также получаю это исключение:

org.hibernate.boot. 1028 *

Как я могу сопоставить тип String по умолчанию с Hibernate?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...