title: Setting nullValueMappingStrategy on the mapper / mapper config level for categories of mappings
body: <p>MapStruct documentation has the following to say about the sensible defaults chosen for NullValueMappingStrategy.RETURN_DEFAULT:</p>
  
  <blockquote>
    <p>Bean mappings: an 'empty' target bean will be returned, with the
    exception of constants and expressions, they will be populated when
    present.</p>
    
    <p>Primitives: the default values for primitives will be returned, e.g.
    false for boolean or 0 for int.</p>
    
    <p>Iterables / Arrays: an empty iterable will be returned.</p>
    
    <p>Maps: an empty map will be returned.</p>
  </blockquote>
  
  <p>The problem is, we want to be able specify on the @Mapper level that, e.g., Iterables should have NullValueMappingStrategy.RETURN_DEFAULT but not primitives. The reason for this is that an empty iterable is a sensible default for our use case, but 0 is not a sensible default for int. We'd prefer not to have to, e.g., declare:</p>
  
  <pre><code>    @IterableMapping(nullValueMappingStrategy = NullValueMappingStrategy.RETURN_DEFAULT)
  </code></pre>
  
  <p>for every iterable we are mapping.</p>
  
  <p>Does MapStruct provide a clean way to do this that I am not finding in the documentation?</p>