在用SSH做程序的时候,我要在数据库的外键表里插入数据,可是它总提示org.hibernate.TransientObjectException,说主键id不可以插入到外键表中。数据库里也是没有插入进信息的,谁能告诉我这个错误到底是错在哪里啊?

解决方案 »

  1.   

    你在<one-to-many>的一段设置 cascade="save-update"  试试
      

  2.   

    你的主键对象是暂态对象 因为它和外键对象都在同一个hibernate事务中 这个事务没有提交 你的主键对象就没有在数据库生成数据,那么你再用它的id插入外键表 当然是不行了~~
    可能是你的hibernate配置文件的主外键关联配置的不对~~细心检查一下~~
      

  3.   


    原因就像上面的说的,你可以尝试着在<many-to-one>里加入cascade="all"属性。
    <many-to-one   cascade="all"/>
      

  4.   

    我也是单表操作有错!解决了吗?解决了麻烦发到我邮箱谢了![email protected]
      

  5.   

    我这也遇到这样的问题,解决了吗?解决了麻烦发到我邮箱谢了![email protected]