Im używać ORMLite w mojej aplikacji na Androida. Muszę utrzymywać tę klasę, która ma HashMap. Jaki jest dobry sposób na utrzymanie go? To mój pierwszy raz, kiedy próbowałem utrzymać HashMap, także po raz pierwszy z ORMLite, więc każda rada byłaby bardzo cenna!Persist HashMap w ORMLite
* Edit * Jeśli to czyni żadnej różnicy, klasa ćwiczenia jest po prostu String (który działa również jako ID w bazie danych), a klasa Zestaw posiada int Identyfikator (który jest również id w baza danych), waga int i int.
@DatabaseTable
public class Workout {
@DatabaseField(generatedId = true)
int id;
@DatabaseField(canBeNull = false)
Date created;
/*
* The hashmap needs to be persisted somehow
*/
HashMap<Exercise, ArrayList<Set>> workoutMap;
public Workout() {
}
public Workout(HashMap<Exercise, ArrayList<Set>> workoutMap, Date created){
this.workoutMap = workoutMap;
this.created = created;
}
public void addExercise(Exercise e, ArrayList<Set> setList) {
workoutMap.put(e, setList);
}
...
}
Proszę pana, jesteś bohaterem. Dziękuję bardzo! Dla potrzeb zapisu, musiałem także dodać "narzędzia Serializable" do klas ćwiczeń i zestawu. – fred
Dobra uwaga. Edytowałem swoją odpowiedź. Dzięki. – Gray
Witaj Grey, mam pytanie związane z uporczywymi mapami: O ile mi wiadomo, tylko kolekcje są obsługiwane w ormlite dla wytrwałości, wraz z zagranicznymi kolekcjami - czy mieszam coś tutaj? – Ready4Android