![]() |
1
1
你可以用冬眠
Interceptor
一个工具
在该方法中,可以将MyWrapperClass传递给数据对象。根据应用程序的版本,包装器将有所不同。拦截器可以在会话级别或会话工厂级别设置。 |
![]() |
2
0
我和我的同事尝试了很多选择。我们决定使用Hibernate记录不良的ResultTransformer接口(实际上,Hibernate缺少文档是可耻的)。虽然使用Transformer迫使我们手动解析mydto构造函数中的对象[]数组,但这是一个值得权衡的问题。 在ResultTransformer中,我们通过Spring注入了一个特定于版本的包装器工厂。我们更改了查询以允许resultTransformer实例化mydto,瞧!问题解决了。下面是我们修改过的查询和DTO类:
根据我对桂林的评论,拦截器没有按预期工作。大概是因为mydto不是持久类。 我们还尝试让DTO通过一个singleton类直接访问applicationContext,并从中获得wrapperFactory。尽管这样做有效,但可以预见的是,fubar完成了我们的单元测试,我们放弃了这种方法。 |