Je prends des données de l'API REST sous la forme de JSON.Comment enregistrer des POJO dans SQLite et les récupérer?
En utilisant http://www.jsonschema2pojo.org/, classes créées. En utilisant GSON, je convertis des données en POJO. Les objets (tonnes d'entre eux) sont sous la forme d'un arbre hiérarchique: parent inclut les enfants qui peuvent être
- un autre objet collection
- d'objets
- données simples
J'ai essayé d'utiliser différents ORM: SugarORM, RushORM, SquiDB, JDXA. Certains d'entre eux ne supportent pas les relations (une à une, une à plusieurs, plusieurs à plusieurs). Certains d'entre eux nécessite d'ajouter des annotations. JDXA est bon, mais il est payant et la configuration de la cartographie a pris du temps, elle m'a semblé trop complexe.
Cette question peut sembler que demander recomendation bibliothèque ou « l'outil à utiliser », mais vraiment je ne vois pas comment la façon de résoudre ce problème. Comment enregistrer ces POJO dans des tables relationnelles SQLite et les récupérer de manière efficace (en moins de temps)? Dois-je utiliser ORM? ou je devrais écrire l'insertion et la sélection du code moi-même?
Joe, pouvez-vous s'il vous plaît envoyer vos définitions de classe de modèle et la spécification de mappage JDXA à [email protected] afin que nous puissions étudier le problème? Merci, –
Parfois l'erreur "Table ou vue introuvable" se produit si l'emplacement du fichier de base de données dans la spécification de mappage JDXA n'est pas spécifié correctement. JDXA ORM s'attend à ce que le fichier de base de données SQLite se trouve dans le répertoire des bases de données de l'application. Ce répertoire se trouve dans _/data/data//databases_. Donc, s'il vous plaît assurez-vous que l'instruction JDX_DATABASE dans le fichier de mappage (.jdx) est quelque chose comme ceci: _JDX_DATABASE JDX: jdbc: sqldroid: /data/data/com.mycompany.myapp/databases/example.db; JDX_DBTYPE = SQLITE; ... _ –