今天在学习hibernate一对多映射时,在一方定义了一个多方的集合,并设置了get、set方法。但是在保存时报类型转换错误。最后对照视频代码发现,视频中在一方定义多方的集合时,只定义了set接口对象,并没有定义hashset实现类对象。网上搜索一圈发现,hibernate在运行时会将set集合替换成他自己的实现类persistentSet,这样就会在set集合的时候和hashset冲突。