hibernate 在多的一方插入数据,发现除了外键,其他字段保存成功
来源:互联网 发布:mac桌面双桌面用 编辑:程序博客网 时间:2024/05/01 16:02
例如:speaker类 和 video类 一个speaker发布多个video
speaker{
private int id;
private String name;
}
video{
private int id;
private String name;
private Speaker speaker;
private int speaker_id; //这是数据库中的外键,可以省略,个人就是习惯性的把参数传给了它,导致了现在的错误.
}
解决方法之一:jsp页面 把speaker_id换成speaker.id
(把外键属性名换成 外键对象名.外键id)
可能原因之一:
这是因为我们的jsp页面的外键的值保存到了当前的对象的外键属性中了,而不是外键对象的属性id中。
这样 save方法执行的时候 按照hbm.xml配置文件来设置参数的时候会出错(因为hbm.xml只能写一个column=”speaker_id”,而又必须写在<many to one>中.所以它会把其他列的值成功映射上去,而这个外键属性要映射到外键中 会到体现它多对一关系的“类名.外键对象.id”中找值 )
个人理解,仅供参考!
阅读全文
0 0
- hibernate 在多的一方插入数据,发现除了外键,其他字段保存成功
- hibernate在做一对多关联时,保存一方的对象,报出不能插入外键的错误的解决方法
- hibernate 一对一、多对一 双向关联的问题——只能在多的一方添加、修改数据,不能在多的一方修改添加
- 关于Hibernate设置一对多关系时更新一方数据时多方外键丢失问题解决
- hibernate 多对一关联 从多的一方取不到一的一方
- 在其他应用中获取SharedPreferences 保存的数据
- 除了gcc外,其他的一些编译器
- Hibernate OneToOne双向关联为什么没有外键的一方不能Lazy加载?
- hibernate 多对一 查询 多的一方如何分页?
- 在hibernate中如果一对多关联,并以多的一方的参数作为条件则必须使用
- mysql中timestamp字段,在更新这个字段其他数据时候,不更新timestamp的时间
- 一对多,在多的一方设查询条件
- sql删除一个表中除了编号以外其他字段都相同的冗余记录
- hibernate 级联保存 只有主表有数据,子表没插入数据
- hibernate与jdbc在插入数据上的速度对比
- 插入数据时,保存的date类型时间字段的数据只有年月日,没有时分秒的问题
- Linux下删除除了某个文件外的其他文件
- JPA中hibernate的数据无法插入却不报错(JPA保存boolean值)
- BZOJ1818 [Cqoi2010]内部白点 扫描线/线段求交
- 微信的一次性订阅消息
- PHP 编码规范
- MVP+Retrofit+Rxjava+ButterKnife+Fresco+Recyclerview+GreenDao+泛型+完整Demo
- iOS开发系列--网络开发
- hibernate 在多的一方插入数据,发现除了外键,其他字段保存成功
- HDU 2066 一个人的旅行
- 进程控制之exec函数
- ML书单推荐_ZY.Zhou
- CPU搭建之verilog篇(未完待续)
- 终端、虚拟终端、shell、控制台、tty的区别
- XAMPP禁止目录浏览的方法
- 如何在控制器获取数据库的数据并且在模板输出
- 淘宝新开店铺如何提高转换