How to write Java code for the following mongo query using mongoTemplate?

Query in shell window is as follows:

db.labServiceMasters.aggregate(
  {$unwind: '$subDepartmentList'},
  {$unwind: '$subDepartmentList.labServiceList'},
  {$match: {'subDepartmentList.labServiceList._id': '123def'}},
  {$project: {_id: 1, labServiceList: ['$subDepartmentList.labServiceList']}}
)

I have converted the above query to Java code as shown below, but I am not getting the result inside labServiceList. And also please let me know how to read the result as my POJO object.

DBObject unwind1 = new BasicDBObject("$unwind" , "$subDepartmentList");
DBObject unwind2 = new BasicDBObject("$unwind" , "$subDepartmentList.labServiceList");


DBObject match = new BasicDBObject("$match", new BasicDBObject("subDepartmentList.labServiceList._id", labServiceId)); 

DBObject project = new BasicDBObject("$project", new BasicDBObject("_id",1).append("subDepartmentList.labServiceList", 1));

AggregationOutput output=mongoTemplate.getCollection(laboratoryMasterCollection).aggregate(unwind1, unwind2, match, project);

List<DBObject> results = (List<DBObject>) output.results();

    for(DBObject response: results){
        System.out.println("INside for each loop of Results");
        Master master=(Master) response;
        System.out.println("master:: "+response.getDepartmentId());
     }