sulph mitologia griega orm scala mongodb morphia

orm - mitologia - morphia sulph



Uso de Morphia para Scala (4)

Echa un vistazo a Salat:

https://github.com/novus/salat

Salat usa firmas Scala en escabeche para serializar y deserializar clases de casos.

¿Es posible usar Morphia en Scala?

¿Hay otros ORM livianos para MongoDB que admitan scala?



Morphia es probablemente mucho más accesible y tiene una curva de aprendizaje (mucho) más fluida, pero es crucial darse cuenta de que la seguridad estática y el soporte de autocompletado que Rogue te brinda cuando consultas es realmente un nivel superior a Morphia-Morphia es solo tiempo de ejecución seguro, que también admiten justo el comienzo del README .

Comparar:

val checkin: Option[Checkin] = Checkin where (_.venueid eqs id) and (_.userid eqs mayor.id) and (_.cheat eqs false) and (_._id after sixtyDaysAgo) limit(1).get()

vs

Employee scottsBoss = ds.find(Employee.class).filter("underlings", scottsKey).get();

Si cambia alguno de los nombres de campo o valores de consulta para que sean incorrectos, obtendrá un error de tipeo inmediato, mientras que Morphia solo lanzará una excepción en el tiempo de ejecución.

Ver http://engineering.foursquare.com/2011/01/21/rogue-a-type-safe-scala-dsl-for-querying-mongodb/


Morphia es solo una capa de persistencia basada en mongo-java-driver que utiliza la anotación en un estilo JPA para el mapeo de objetos. Debería funcionar perfectamente con Scala.

Entre los controladores "nativos" de Scala (vale la pena mencionar que todos ellos también se basan en mongo-java-driver ), Rogue (desarrollado por Foursquare) es el más cercano ideológicamente a Morphia (aunque no utiliza anotaciones, que no son t considerado como Scala-idiomático).