title: @Caching With Multiple Keys
body: <p>I have a service that takes in a DTO and returns some result:</p>
  
  <pre><code>@Override
  public int foo(Bar bar) {
      ....
  }
  </code></pre>
  
  <p>Bar is as follows (simplified):</p>
  
  <pre><code>public class Bar {
      public int id;
      public String name;
      public String baz;
  
      @Override
      public int hashCode() {
          //this is already being defined for something else
          ...
      }
  
      @Override
      public boolean equals(Object o) {
          //this is already being defined for something else
          ...
      }
  }
  </code></pre>
  
  <p>I want to use @Cacheable on the foo method; however, I want to hash on the id and name properties, but not baz.  Is there a way to do this?</p>