Andrea Covino parte del equipo de JMoordb, trabajando en la implementación de MongoRepository, (desarrollo interno, estos cambios no estan en el repositorio oficial), esto permite que solo definamos un entity y mediante el uso de MongoRepository desde un controller tengamos las funcionalidades que ofrece el Facade(experimental).
Observe que se dispone de una nueva anotación @DocumentInfo que permite indicar el nombre de la colección.
El modelo anterior {Entity+Facade+Controller}
Nuevo modelo {Entity +Controller{MongoRepository}}
@Getter
@Setter
@DocumentInfo(name = "planeta")
public class Planeta {
@Id
private String idPlaneta;
private String planeta;
private Date fecha;
public Planeta(){ }
public Planeta(String idPlaneta, String planeta, Date fecha){
this.idPlaneta = idPlaneta;
this.planeta = planeta;
this.fecha = fecha;
}
@Override
public String toString(){
return "Palnetas{ idplaneta=" + idPlaneta + ", planeta=" + planeta + ", fecha=" + fecha +"}";
}
}
Facade: No es necesario implementar un Facade.
Podemos observar un simple test.
Planeta expectedPlaneta = new Planeta(randomId, randomId+"Plutón", new Date());
MongoRepository<Planeta> planetaRepo = new MongoRepository<>(Planeta.class);
planetaRepo.save(expectedPlaneta):
Nota: Es código en fases de desarrollo interno, aun no esta implementado de manera oficial,
Observe que se dispone de una nueva anotación @DocumentInfo que permite indicar el nombre de la colección.
El modelo anterior {Entity+Facade+Controller}
Nuevo modelo {Entity +Controller{MongoRepository}}
@Getter
@Setter
@DocumentInfo(name = "planeta")
public class Planeta {
@Id
private String idPlaneta;
private String planeta;
private Date fecha;
public Planeta(){ }
public Planeta(String idPlaneta, String planeta, Date fecha){
this.idPlaneta = idPlaneta;
this.planeta = planeta;
this.fecha = fecha;
}
@Override
public String toString(){
return "Palnetas{ idplaneta=" + idPlaneta + ", planeta=" + planeta + ", fecha=" + fecha +"}";
}
}
Facade: No es necesario implementar un Facade.
Podemos observar un simple test.
Planeta expectedPlaneta = new Planeta(randomId, randomId+"Plutón", new Date());
MongoRepository<Planeta> planetaRepo = new MongoRepository<>(Planeta.class);
planetaRepo.save(expectedPlaneta):
Nota: Es código en fases de desarrollo interno, aun no esta implementado de manera oficial,
Comments