使用数组值的Hibernate关系OneToMany(fetch = Lazy)

时间:2015-03-06 08:19:54

标签: java hibernate

用春天学习冬眠,我有一个问题。如何使用数组值创建关系OneToMany(fetch = Lazy)?

在表格Path.categoryIds中保存了一些Place.id字符串,使用@ConverterString转换为int数组。

那么,如何使用int[] placeIds值填充List“places”?

Place table
- int id
- String name

Path table
- int id
- String place_ids (Place.id`s written by comma (ex:"1,2,3"))

@Entity
@Table(name="place")
public class Place {
    @Id
    @GeneratedValue(strategy= GenerationType.IDENTITY)
    private int id;

    private String name;
}

@Entity
@Table(name="path")
public class Path {
    @Id
    @GeneratedValue(strategy= GenerationType.IDENTITY)
    private int id;

    @Column(name="category_ids")
    @Convert(converter = PlaceIdsConverter.class) // "1,2,3" -> [1,2,3]
    private int[] placeIds;

    @OneToMany(fetch = FetchType.LAZY) // ???, how to fill using values    from placeIds
    private List<Place> places;
}

但是,由于其他原因,使用ManyToMany关系的附加表的情况是不可能的。 :(

0 个答案:

没有答案