解决:
开启事务,并且在 增删改 代码之后加上 事务提交代码。
Transaction tr = session.beginTransaction();
....
session.save();
....
tr.commit();
配置主要看<set>标签,其他和一对多一样
代码如下:
1.
<set name="course"table="sc" cascade="all" inverse="false">
<keycolumn="sid" />
<many-to-manycolumn="cid" class="com.zxxz.bean.Courses"/>
</set>
2.
<!--
set中的name 指 当前JavaBean中的属性名
table指中间表的表名
inverse="true"指放弃外间维护,由另一方维护
-->
<setname="students" table="sc" inverse="true">
<!--
key中的column 指当前JavaBean 在中间表的外键名
-->
<keycolumn="cid" />
<!--many-to-many 中column 指JavaBean中属性在中间表的外键-->
<many-to-manycolumn="sid" class="com.zxxz.bean.Students"/>
</set>
注:1.多对多配置中必须有一方要放弃外键维护,即<set>标签中要有inverse=”true” 属性。