J'ai une classe que je veux persister avec OrmLite et il stocke la plupart de ses données dans une HashMap. Je veux mapper ces champs à la table dans Sqlite, laissant ceux absent sur la carte comme null
. Est-il possible de remplacer les méthodes pour enregistrer un enregistrement dans la base de données avec des implémentations personnalisées à l'aide d'OrmLite?Est-il possible d'écrire du code SQL personnalisé dans OrmLite?
0
A
Répondre
0
Je pense que roddik a évolué mais je pensais que je posterais une réponse de toute façon en tant qu'auteur d'OrmLite.
Ma réponse générale est qu'il serait préférable de créer un objet pour stocker les colonnes au lieu d'une carte. Bien que SQL soit une rangée de colonnes de chaînes, le but d'ORM est de traiter les lignes comme des objets en Java au lieu d'une Map of strings.
@DatabaseTable
public void RandomThing {
@DatabaseField
String column1;
@DatabaseField
String column2;
@DatabaseField
String column3;
public void RandomThing(String column1, String column2, String column3) {
...
}
}
Actuellement, il n'existe aucun moyen de conserver une carte de chaînes dans ORMLite.
Questions connexes
- 1. comment décrire cette série dans le code?
- 2. Décrire la structure du tableau
- 3. Est-il possible d'avoir un champ enum dans une classe persisté avec OrmLite?
- 4. Contrôle personnalisé générer du code au moment du design
- 5. Cadre d'entité ADO.net - Code personnalisé
- 6. Déroulement du code de procédure dans SQL
- 7. Puis-je stocker du code XML personnalisé dans web.config
- 8. Où placer du code personnalisé dans un composant personnalisé dans Flash Builder?
- 9. Signification du code SQL dans le code revu
- 10. Rembourrage dans NSTextView - possible sans dessin personnalisé?
- 11. Est-il possible d'injecter du code dans une application Android?
- 12. SQL personnalisé ActiveRecord dans Ruby
- 13. Déployer du code personnalisé sur Sharepoint 2010 à distance?
- 14. C# d'exécuter du code à l'intérieur attribut personnalisé
- 15. Définition de SQL personnalisé dans l'administrateur django
- 16. Code personnalisé dans le rapport Reporting Services
- 17. Décrire un nouveau composant Joomla
- 18. mscorlib.dll personnalisé sans code natif
- 19. Décrire les relations de classe dans ruby
- 20. Décrire un chemin avec GDI + dans .Net
- 21. Comment puis-je utiliser OrmLite avec défaut Android SQLite
- 22. décrire requête avec oracle (.Net Connector)
- 23. Décrire les paramètres WebMethod du service Web ASMX
- 24. Impossible d'utiliser l'éditeur HTML Ajax personnalisé à partir du code
- 25. Code personnalisé dans la connexion standard DotNetNuke?
- 26. Lancer un code personnalisé via des tâches dans Inno Setup
- 27. Insertion de code PHP personnalisé dans une certaine page WordPress
- 28. La meilleure façon de décrire les types de variables dans SQL
- 29. Écrire du code SQL brut pour PostGIS
- 30. Exécuter du code personnalisé après l'authentification Windows/Form
Cette carte est-elle censée être une collection de lignes SQL dans une table? Par exemple, si vous avez 100 éléments dans la carte, auriez-vous 100 lignes dans une table SQL? – Gray
@Gray, no. Dites qu'il y a 'column1',' column2', 'column3' dans la table. Le 'Map 'foo', 'column3' => 'bar'. Alors la ligne résultante serait 1 => null, 2 => foo, 3 => bar. De toute façon, je suis passé à Hibernate, donc cette question n'est pas pertinente. –
Fluffy
Je suis l'auteur d'OrmLite et je suis simplement curieux de savoir s'il manque des fonctionnalités que je devrais envisager d'ajouter. Donc l'idée est que la carte stocke une rangée. La clé String est le nom de la colonne et la valeur Object est ses données associées? Mais vous pourriez utiliser un objet au lieu d'une carte, non? Appelez setColumn2 ("foo") et setColumn3 ("bar"). N'est-ce pas une façon plus Java de le faire? – Gray