diff --git a/spring-data-mongodb/pom.xml b/spring-data-mongodb/pom.xml
index 049af4738f..3111e51331 100644
--- a/spring-data-mongodb/pom.xml
+++ b/spring-data-mongodb/pom.xml
@@ -71,18 +71,31 @@
querydsl-mongodb
${querydsl.version}
+
+ com.mysema.querydsl
+ querydsl-apt
+ 3.6.6
+
- maven-compiler-plugin
- 2.3.2
-
- 1.8
- 1.8
-
+ com.mysema.maven
+ apt-maven-plugin
+ 1.1.3
+
+
+
+ process
+
+
+ target/generated-sources/java
+ org.springframework.data.mongodb.repository.support.MongoAnnotationProcessor
+
+
+
diff --git a/spring-data-mongodb/src/main/java/org/baeldung/model/QUser.java b/spring-data-mongodb/src/main/java/org/baeldung/model/QUser.java
deleted file mode 100644
index 9d60457033..0000000000
--- a/spring-data-mongodb/src/main/java/org/baeldung/model/QUser.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package org.baeldung.model;
-
-import javax.annotation.Generated;
-
-import com.mysema.query.types.path.EntityPathBase;
-import com.mysema.query.types.path.StringPath;
-
-@Generated("com.mysema.query.codegen.EntitySerializer")
-public class QUser extends EntityPathBase {
-
- private static final long serialVersionUID = 1L;
-
- public static final QUser user = new QUser("user");
-
- public final StringPath name = createString("name");
-
- public QUser(String variable) {
- super(User.class, variable);
- }
-}
diff --git a/spring-data-mongodb/src/main/java/org/baeldung/model/User.java b/spring-data-mongodb/src/main/java/org/baeldung/model/User.java
index 7e074c1d2b..34156163fc 100644
--- a/spring-data-mongodb/src/main/java/org/baeldung/model/User.java
+++ b/spring-data-mongodb/src/main/java/org/baeldung/model/User.java
@@ -3,6 +3,9 @@ package org.baeldung.model;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;
+import com.mysema.query.annotations.QueryEntity;
+
+@QueryEntity
@Document
public class User {