繁体   English   中英

Spring ConversionService延迟加载

[英]Spring ConversionService Lazy Load

我有一个Converter,可以将域对象转换为数据传输对象。 我的域对象有一个延迟加载的集合。 如果我不使用转换服务在控制器方法上放置@Transactional得到org.hibernate.LazyInitializationException

我也不能将@Transactional放在Converter的方法或类上,因为它会导致

Caused by: java.lang.IllegalArgumentException: Unable to the determine sourceType <S> and targetType <T> which your Converter<S, T> converts between; declare these generic types.

因此,我想知道必须解决哪些选项或更好的设计替代方案?

首先,您必须传递一个完全内部化的对象。

将您的集合标记为FetchType.EAGER

或在您的服务本身中,

hibernate.initialize(parent.getChilds()) 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM