2012-11-08 39 views
1

我想知道iBatis是否可以像Hibernate支持一樣提供對懶惰獲取的支持?例如,我有用戶類,它有iBatis是否支持像Hibernate一樣的延遲加載?

public class User { 
    List<Address> addresses; 

    public List<Address> getAddresses(){ 
     return addresses; 
    } 
    ... 
} 

現在我想實現惰性抓取時調用user.getAddresses()。在iBatis中可以做到這一點嗎?如果是,那麼如何?

感謝您的幫助。

回答

2

當然。
根據文檔,您可以爲您想要延遲加載的屬性設置resultMapresult元素的lazyLoad屬性。
例如:

<resultMap id="resultMapUser" class="User"> 
    <result property="addresses" select="someOtherStatementName" lazyLoad="true"/> 
</resultMap>