title: How to make cache key if method parameter is Interface
body: <p>I've a method which accept <code>org.springframework.data.domain.Pageable</code> as parameter.
  When user request for <strong>page = 0 and size = 20</strong> and so on then I want to make these passed values as <code>cache key</code>. </p>
  
  <p>What I did is </p>
  
  <pre><code>@Cacheable(key = "#pageable.number")
  public Person getPersons(Pageable pageable) 
  </code></pre>
  
  <p>It's giving axception :</p>
  
  <blockquote>
    <p>EL1008E: Property or field 'number' cannot be found on object of type
    'org.springframework.data.domain.PageRequest' - maybe not public?</p>
  </blockquote>
  
  <p>How can I make cache key it?</p>