Transformer un ArrayList java, en bdd android

Messages postés
5
Date d'inscription
dimanche 4 décembre 2016
Dernière intervention
19 février 2018
-
Bonjour,

je suis actuellement face à un probleme qui me bloque dans un petit projet:

J'ai un file .txt qui contient une liste d'elements formatés que je dois injecter dans une base de données pour une application android.
J'ai reussi premierement à manipuler une bdd avec SQLite sur Android studio. Mais j'avais entré les valeurs à la fin.

J'ai donc mon .txt composé d elements de cette forme:
<nom objet>
[{x0,y1},{x1,y0}];
<autre objet>
[{x0,y0}];

J'ai fais un code en java (bondiouss c etait long...) qui crée un ArrayList<Indice> listIndice, avec Indice une classe que j'ai fait qui est composée d'un id, d'un nom, d'un x, et d'un y.

Mon ArrayList rempli d'indices, j'aimerai savoir, auriez vous une idée de comment exploiter ces Indices pour en faire une base de donnée exploitable par Android Studio, des tutos, des docs, des outils?
Je m'en remet à vous,
Cordialement Sungeon.
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Messages postés
5307
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
14 décembre 2018
1
Merci
Salut,

Utilise la librairie Room Persistence sous Android pour transformer ta classe Indice en table sqlite.



Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 99 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Twinuts
Messages postés
15869
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
17 décembre 2018
0
Merci
Bonjour,

Si tu as une liste d'Indice côté Java avec id, nom, x, y, il te faut une table en base de données avec les colonnes id, nom, x, y de manière équivalente.

Après c'est juste de la manipulation de base de données en Java.
https://docs.oracle.com/javase/tutorial/jdbc/basics/index.html

Exemple :

String sql = "insert into INDICE values (?, ?, ?, ?)";
try (Connection conn = DriverManager.getConnection(url, usr, pwd);
        PreparedStatement stmt = conn.prepareStatement(sql)) {
    for (Indice indice : indices) {
        stmt.setInt(1, indice.getId());
        stmt.setString(2, indice.getName());
        stmt.setDouble(3, indice.getX());
        stmt.setDouble(4, indice.getY());
        stmt.addBatch();
    }
    stmt.executeBatch();
} catch (SQLException e) {
    e.printStackTrace();
}
Commenter la réponse de KX

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.