以下是来自名为m1
的类的hibernate映射文件的片段。
<class name="pojo.m1" table="m1">
<id name="r_no">
<generator class="increment" />
</id>
<property name="s_name" />
<map name="map" table="m4" cascade="all" sort="pojo.m4">
<key column="r_no" />
<index-many-to-many class="pojo.m2" column="t1" /> <!-- r_no as index !-->
<many-to-many class="pojo.m3" column="t2" /> <!-- r_no + total OR class m3 as key !-->
</map>
</class>
在map
标记中,有一个名为sort
的属性。它有什么作用 ?这里它命名实现comparator
类的类。
public class m4 implements Comparator<m2> {
@Override
public int compare(m2 o1, m2 o2) {
if(o1.getR_no() > o2.getR_no())
return 1;
else
return -1;
}
}
答案 0 :(得分:2)
sort (optional): specifies a sorted collection with natural sort order or a given comparator class.
它指定您的映射集合是按照排序的标准排序的。在您的情况下,给出了一个比较器,它定义了两个对象的顺序,因此迭代地定义了所有对象的顺序。