我正在使用Hibernate
映射来配置我的应用程序中的阶段。它被配置为必要的类(这里称为Configurator)注入阶段。
我有一个包含对象分数的列表:
private List<Score>dsScore = new ArrayList<Score>(0);
我有一个包含表Score的数据库,以及Student和student.hbm.xml类中的列表:
`<list name ="dsScore" table="SCORE">
<key>
<column name="SCORE_ID" not-null="true"></column>
</key>
<one-to-many class="model.Score"/>
</list>`
进入包含它的文件配置学生,它不起作用。 有人可以帮我吗?
答案 0 :(得分:0)
list
hibernate类型是具有持久排序的集合。它
要求基础表中的显式映射列进行排序,所以
您的映射缺少<index>/<list-index>
元素。或者您
应该使用bag
(可能带有order-by
属性)来获取集合
映射到java List
而不保持顺序。 See docs package
<hibernate-mapping>
上的属性,而不是限定的类名。我假设Student
和Score
类都在model
包中。然后映射应该看起来像
<hibernate-mapping package="model">
<class name="Student" table="...">
...
<bag name="dsScore" table="Score" order-by="...">
<key column="SCORE_ID" />
<one-to-many class="Score" />
</bag>
</class>
</hibernate-mapping>