web-dev-qa-db-fra.com

Hibernate, List <String>

Je semble avoir des problèmes avec le mappage d'une liste dans Hibernate. Dans notre projet, il y a une classe Card avec contient une classe Answer avec Answer contenant un List<String>.

Est un List<String> mappable par Hibernate à l'aide d'annotations? Je veux dire, car il n'a pas le @Entity annotation?

Cordialement

49
TeaOverflow

Utilisation @ElementCollection:

@ElementCollection
@CollectionTable(name="Nicknames", joinColumns=@JoinColumn(name="user_id"))
@Column(name="nickname")
public List<String> getNicknames() { ... } 

Source: 7.2.3. Collections de types de base et d'objets intégrables

103

essayer

  @org.hibernate.annotations.CollectionOfElements(
        targetElement = Java.lang.String.class
    )
    @JoinTable(
        name = "foo",
        joinColumns = @JoinColumn(name = "foo_id")
    )
    @org.hibernate.annotations.IndexColumn(
        name = "POSITION", base = 1
    )
    @Column(name = "baz", nullable = false)
    private List<String> arguments = new ArrayList<String>();

ou voir cet exemple détaillé