我的错误是没有用全限定名。
在score.hbm.xml中原先的代码:
<class name="entity.Score" table="score">
<id name="scoreid" column="scoreid" type="java.lang.String">
<generator class="native"/>
</id>
<many-to-one name="sid"
column="sid"
class="Student"
lazy="false"
outer-join="true"
cascade="save-update"
/>
修改为(在Student的前面加上类名entity):
<class name="entity.Score" table="score">
<id name="scoreid" column="scoreid" type="java.lang.String">
<generator class="native"/>
</id>
<many-to-one name="sid"
column="sid"
class="entity.Student"
lazy="false"
outer-join="true"
cascade="save-update"
/>
注:如果你的<class name="entity.Score" table="score">是用的全限定名下面的<many-to-one>的class中也要用全限定名否则会报错。