Soporte de SQL en ejbjmoordb a partir de la versiĆ²n 0.11
<dependency>
<groupId>com.github.avbravo</groupId>
<artifactId>ejbjmoordb</artifactId>
<version>0.12</version>
</dependency>
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
Ejemplo:
List<Factura> fact = facturaRepository.findBy("select * from factura where estatusfactura.idestatusfactura =1 order by idfactura");
fact.forEach((f) -> {
System.out.println("factura "+f.getIdfactura() + " :"+f.getAlmacen().getIdalmacen());
});
Optional<Planetas> p2 = planetasRepository.findById("select * from pais where idplaneta='tierra'");
if (!p2.isPresent()) {
System.out.println("no hay planetas");
} else {
planetas =p2.get();
System.out.println("el planeta es " + planetas.toString());
}
String sql = "select * from pais where idcontinente='am' order by idpais";
List<Pais> paisList = paisRepository.findPagination(sql,1,10);
String sql = "select * from pais where idcontinente='am'";
<dependency>
<groupId>com.github.avbravo</groupId>
<artifactId>ejbjmoordb</artifactId>
<version>0.12</version>
</dependency>
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
El soporte bĆ”sico de SQL se ha incluido dentro del framework, mediante de la integraciĆ³n de una interesante librerĆa que convierte las instrucciones sql a consultas Mongodb. Se ha realizado la integraciĆ³n para permitir que sea fĆ”cil su uso con ejbmoordb mediante la clase repository.
Los mƩtodos que la implementan son
- public Optional <T> findById(String sql)
- public List< T> findPagination(String sql, Integer pageNumber, Integer rowsForPage)
- public List<T> findBy(String sql)
- public Boolean delete(String sql)
- public Boolean deleteMany(String sql)
La libreria para convertir de sql a Mongodb fue desarrollado por Vincent Russell.
Este es el repositorio
Mostrare los ejemplos directos publicados por Vincent
Restricciones
Ejemplo:
List<Factura> fact = facturaRepository.findBy("select * from factura where estatusfactura.idestatusfactura =1 order by idfactura");
fact.forEach((f) -> {
System.out.println("factura "+f.getIdfactura() + " :"+f.getAlmacen().getIdalmacen());
});
- findById
Optional<Planetas> p2 = planetasRepository.findById("select * from pais where idplaneta='tierra'");
if (!p2.isPresent()) {
System.out.println("no hay planetas");
} else {
planetas =p2.get();
System.out.println("el planeta es " + planetas.toString());
}
- findPagination
String sql = "select * from pais where idcontinente='am' order by idpais";
List<Pais> paisList = paisRepository.findPagination(sql,1,10);
- findBy
String sql = "select * from pais where idcontinente='am'";
List< Paises > list =paisesRepĆ²sitory.findBy(sql,"am");
String sql ="select * from pais where poblacion > 50";
String sql ="delete from planeta where idplaneta='tierra'";
- findFirst
String sql ="select * from pais where poblacion > 50";
Optional<Pais> optional = paisRepository.findFirst(sql);
if (optional.isPresent()) {
Pais p = optional.get();
}
- delete
String sql ="delete from planeta where idplaneta='tierra'";
planetasRepository.delete(sql);
- deleteMany
String sql ="delete from planeta where idplaneta='tierra'";
planetasRepository.deleteMany(sql);
AquĆ hay mas detalles de la implementaciĆ²n y las instrucciones que soporta y las que aun faltan.
Comments