By configuring either of the following:
<many-to-many ... fetch="select"/>
<many-to-many ... outer-join="false"/>
the collection, when initialized, will contain proxies.
Instead, lazy="extra" can be defined on <map>, <set>, <bag>, <idbag>, <list>, which will only initialize entities (not as a proxy) as needed.
This functionality will be deprecated by logging a warning when the configuration is detected.