Los Repository representan el mecanismo de comunicación de la aplicación con la base de datos NoSQL.
Proporcionan los métodos para interactuar los entitys y documentos.
En el constructor indicamos en el método super(Entity.class, "basedatos","coleccion")
public PlanetasRepository() {
super(Planetas.class, "myappdb", "planetas");
}
import com.avbravo.jmoordb.facade.AbstractRepository;
import com.avbravo.myapp.entity.Planetas;
import com.avbravo.myapp.provider.MongoClientProvider;
import com.mongodb.MongoClient;
/**
*
* @author avbravo
*/
public class PlanetasFacade extends AbstractFacade<Planetas> {
MongoClientProvider mongoclientProvider;
public PlanetasFacade() {
super(Planetas.class, "myappdb", "planetas");
}
@Override
protected MongoClient getMongoClient() {
if(mongoclientProvider == null){
mongoclientProvider = new MongoClientProvider();
}
return mongoclientProvider.getMongoClient();
}
@Override
public Object findById(String key, String value) {
return search(key, value);
}
@Override
public Object findById(String key, Integer value) {
return search(key, value);
}
}
public class ContinentesFacade extends AbstractFacade<Continentes> {
MongoClientProvider mongoclientProvider = new MongoClientProvider();
public ContinentesFacade() {
super(Continentes.class, "myappdb", "continentes");
}
@Override
protected MongoClient getMongoClient() {
return mongoclientProvider.getMongoClient();
}
@Override
public Object findById(String key, String value) {
return search(key, value);
}
@Override
public Object findById(String key, Integer value) {
return search(key, value);
}
}