hibernate在加载持久化对象时不会调用setter

做多媒体时,某些持久化对象类中有几个瞬态字段,他们的值是由几个持久化字段经过一定计算得出的,所以我为了省事,便在那些持久化字段的setter中一并把瞬态字段的值给设了,心想hibernate从数据库读出数据加载成对象时应该会调用这些方法吧,这样就不用特意去找地方给那些瞬态字段设置了吧,可是事与愿违,实际运行起来发现setter根本没有被执行,我估计是hibernate直接用反射给类中的变量设值,无奈,只好采用别的方案,回头想想,我之所以想当然地认为setter会被调用是因为struts2和spring都是这么干的,毕竟这是javabean规范,但为什么hibernate偏偏这么非主流,我想可能是因为出于性能考虑吧,但也不排除是因为hibernate的编写者没遵循规范,是哪种原因还不得而知,但是可以提醒大家以后和我有类似的想法的时候就得注意了。顺带一提,我这边用的是hibernate3.2,其他版本没测试过!
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值