title: MongoRepository findOne using "id" instead of "_id"
body: <p>I have a setup very similar to this one: <a href="http://spring.io/guides/gs/accessing-data-mongodb/" rel="nofollow">http://spring.io/guides/gs/accessing-data-mongodb/</a></p>
  
  <p>In my POJO class I use a String field (annotated with @Id) and set it manually.</p>
  
  <pre><code>public class MyPojo {
    @Id
    private String id
  
    public MyPojo(String id) {
      this.id = id
    }
  
    //...
  }
  </code></pre>
  
  <p>Like in the example I use an extended interface of MongoRepository:</p>
  
  <pre><code>public interface MyPojoRepository extends MongoRepository&lt;MyPojo, String&gt; {
  
  }
  </code></pre>
  
  <p>When I save my object</p>
  
  <pre><code>myrepo.save(new MyPojo("user"));
  </code></pre>
  
  <p>Everything works fine and in my collection _id = "user" as I expect it to be.</p>
  
  <p>However, if I want to query that object now:</p>
  
  <pre><code>myrepo.findOne("user")
  </code></pre>
  
  <p>I receive null. The debug log shows that my collection is queried with</p>
  
  <blockquote>
    <p>{ "id" : "user" }</p>
  </blockquote>
  
  <p>instead of "_id". Is this behavior intended? I find this very confusing. Especially because the JavaDoc explicitly mentions the term "id" here.</p>
  
  <p>//EDIT:</p>
  
  <pre><code>myrepo.exists("user") 
  </code></pre>
  
  <p>returns true...</p>