看上面的异常信息有一条:Unexpected row count: 0 expected: 1
你正在调用saveOrUpdate往主键里添值,当主键被设置时saveOrUpdate产生了Update而不是insert
即Hibernate: update Card set NAME=?, STU_ID=? where id=?
由于Card表格里主键id没有值所以产生了错误!!
因而只需要使关联操纵时不是用Update就解决了问题!!
使用的是hibernate的saveOrUpdate方法保存实例。saveOrUpdate方法要求ID为null时才执行SAVE,在其它情况下执行UPDATE。在保存实例的时候是新增,但你的ID不为null,所以使用的是UPDATE,但是数据库里没有主键相关的值,所以出现异常。