采用struts2+hibernate,一个po(A)中采用另一个po(B)类而非其id作外键时,若A的input页面中没有用到B的属性,其页面也必须用<s:hidden/>标签存储B的id属性,而非B类,否则保存A时,会报hibernate保存瞬态对象错误。
注意点:
1. A的input页面若没有用到B,则表示B仅作为A的外键,而不对A中信息有直接影响。此情况下,进入A的input页面的action必须对A中的B进行赋值(即setter方法),否则A中的B将为空,setter方法赋的值为B对象。
2. <s:hidden/>标签存储的是B的id而不是B对象。