sql >> Database >  >> NoSQL >> MongoDB

Spring Boot + MongoDB Id-query

Nou, ik heb het antwoord zelf gevonden. Schakel terug naar kleine letters id zodat findById werkt en voeg de volgende klasse toe aan het project:

@Configuration
public class SpringDataRestConfiguration extends RepositoryRestConfigurerAdapter  {

    @Override
    public void configureRepositoryRestConfiguration(RepositoryRestConfiguration config) {
        config.exposeIdsFor(Resource.class);
    }
}

Zoals de naam van de methode suggereert, zorgt deze configuratie ervoor dat Resource-klasse-objecten hun id's in JSON zichtbaar maken.

UPDATE:Als u de nieuwste of relatief nieuwste versie van spring-boot gebruikt, is de RepositoryRestConfigurerAdapter class is verouderd en de java-doc stelt voor om de interface RepositoryRestConfigurer te gebruiken rechtstreeks.

Dus je code zou er als volgt uit moeten zien:

@Configuration
public class SpringDataRestConfiguration implements RepositoryRestConfigurer  
...



  1. Embedded Redis voor Spring Boot

  2. Hernoem ObjectId _id naar id in Jackson deserialisatie met Jongo en MongoDB

  3. $ontwind lege array

  4. MongoDB $rtrim