In hibernate collection, I like to use list, because it looks have perfect match with
Java List. But it requires a index element. I don't really understand why it is a mandatory element? In Java List, it has an index, but you don't need to specify index when you insert an object into the list.
<list name="students">
<index name="stno"/>
<key column="id"/>
<one-to-many class="Student"/>
</list>