@manytomany的做法需要一些标准步骤,才能省工
下面主要目的是在多对多的情况下,一边建立表的关联关系,另一边建立数据的关联关系
以一条策略关联一大片规则为例子
1 建立关联表
Strategy一张表
Specification一张表
strategy-specification关联的一张表。表中列为stid, spid(分别是策略,规则id)
2 在策略类的处理
2.1 增加策略类的属性,包含规则列表(List<Sp> spList)
2.2 增加对规则列表的getter和setter
2.3 为getter增加修饰语句
@ManyToMany
@JoinTable(name="关联表名称“,joinColumn= { @JoinColumn(name= "stid策略id”}, inverseJoinColumn={ @JoinColumn(name= "spid规则id”} } )
3 在规则类的处理
3.1 增加规则类的属性,即策略列表(List<St>)
3.2 增加对策略列表的getter和setter
3.3 为getter增加修饰语句
@ManyToMany(mappedBy = "策略类里面规则列表的名字(spList)“)
这里mappedBy就是被谁谁映射,即两者发生关联的属性。
参考
1 http://docs.oracle.com/javaee/5/api/javax/persistence/ManyToMany.html
public abstract String mappedBy