当你看<s:debug></debug> 时看到的是最终的o对象的内容,
public class OrgManagerImpl extends HibernateDaoSupport implements OrgManager {
public void addOrg(Orgnization org, int parentId) {
if (parentId != 0) {
org.setParent((Orgnization) this.getHibernateTemplate().load(
Orgnization.class, parentId));
}
this.getHibernateTemplate().save(org);
String sn = org.getParent() == null ? "" + org.getId() : org.getParent().getSn()+ "_" + org.getId();
org.setSn(sn);
this.getHibernateTemplate().update(org);
}
}
当action 调用 orgManager.addOrg(orgnization, parentId); 时候,orgnization 中的id 为0,其他的均为付给的值,
当,save后,orgnization 将很hibernate的池对象同步,由于id 是主键,所有它并不归我们管,所有,池中id将赋值给orgnization中的
id, 而debug 中看到的,id是赋值后的id .在save()方法未调用之前,orgniaztion是给正常对象