Example usage for org.springframework.data.mongodb.core.query BasicQuery BasicQuery

List of usage examples for org.springframework.data.mongodb.core.query BasicQuery BasicQuery

Introduction

In this page you can find the example usage for org.springframework.data.mongodb.core.query BasicQuery BasicQuery.

Prototype

public BasicQuery(Document queryObject, Document fieldsObject) 

Source Link

Document

Create a new BasicQuery given a query Document and field specification Document .

Usage

From source file:com.okode.demos.mmaps.controller.APIController.java

@ApiOperation("Find entities by filter and fields inside a view")
@RequestMapping(value = "/findentities", method = RequestMethod.GET)
private GeoJSON findEntitiesInsideViewByFilterFields(@RequestParam(defaultValue = "24.25079") float lat1,
        @RequestParam(defaultValue = "-35.912262") float lng1,
        @RequestParam(defaultValue = "53.46439") float lat2,
        @RequestParam(defaultValue = "28.951021") float lng2,
        @RequestParam(defaultValue = "office") String collection,
        @RequestParam(defaultValue = "{\"properties.address.region\":\"MADRID\"}") String filter,
        @RequestParam(defaultValue = "{\"_id\":0,\"type\":1,\"geometry\":1,\"properties.name\":1,\"properties.url\":1,\"properties.pictures\":1}") String fields) {
    Criteria isInsideView = Criteria.where("geometry.coordinates")
            .within(new Box(new Point(lng1, lat1), new Point(lng2, lat2)));
    Query query = new BasicQuery(filter, fields).addCriteria(isInsideView);
    return new GeoJSON(mongoTemplate.find(query, DBObject.class, collection));
}

From source file:org.ingini.mongodb.spring.example.read.TestFindOne.java

@Test
public void shouldFindOneArrayElement() {
    //GIVEN//from w  w  w  .j ava 2s . c o  m
    CollectionManager.cleanAndFill(mongoTemplate.getDb(), "characters.json", HumanCharacter.COLLECTION_NAME);

    //WHEN
    Hero hero = mongoTemplate.findOne(new BasicQuery(
            Query.query(Criteria.where("_id").is(new ObjectId("52516b563004ba6b745e864f"))).getQueryObject(),
            Query.query(Criteria.where("children")
                    .elemMatch(Criteria.where("first_name").is("Sansa").and("last_name").is("Stark")))
                    .getFieldsObject()),
            Hero.class);

    //THEN
    assertThat(hero).isNotNull();
    assertThat(hero.getFirstName()).isEqualTo("Eddard");

}

From source file:org.springframework.data.mongodb.repository.query.StringBasedMongoQuery.java

@Override
protected Query createQuery(ConvertingParameterAccessor accessor) {

    String queryString = replacePlaceholders(query, accessor);

    Query query = null;/*from  w  ww.java2s  . c o m*/

    if (fieldSpec != null) {
        String fieldString = replacePlaceholders(fieldSpec, accessor);
        query = new BasicQuery(queryString, fieldString);
    } else {
        query = new BasicQuery(queryString);
    }

    QueryUtils.applySorting(query, accessor.getSort());

    if (LOG.isDebugEnabled()) {
        LOG.debug(String.format("Created query %s", query.getQueryObject()));
    }

    return query;
}