Основная идея SharedPreferences - хранить вещи в файле XML.
SharedPreferences prefs = this.getSharedPreferences("com.example.app", Context.MODE_PRIVATE);
prefs.edit().putLong("preference_file_key", 1010101).apply();
preference_file_key
- это имя файлов общих предпочтений. И 1010101
- это значение, которое нужно сохранить. apply()
наконец-то сохранить изменения. Если вы получили ошибку из apply()
, измените ее на commit()
. Таким образом, это альтернативное предложение prefs.edit().putLong("preference_file_key", 1010101).commit();
SharedPreferences sp = this.getSharedPreferences("com.example.app", Context.MODE_PRIVATE);
long lsp = sp.getLong("preference_file_key", -1);
lsp
будет -1
, если preference_file_key
не имеет значения. Если «preference_file_key» имеет значение, оно вернет значение этого. Весь код для записи -
SharedPreferences prefs = this.getSharedPreferences("com.example.app", Context.MODE_PRIVATE); // Declare xml file
prefs.edit().putLong("preference_file_key", 1010101).apply(); // Write the value to key.
Код для чтения -
SharedPreferences sf = this.getSharedPreferences("com.example.app", Context.MODE_PRIVATE); // Declare xml file
long lsp = sp.getLong("preference_file_key", -1); // Read the key and store in lsp
В JPA 1 есть несколько хитрых способов сделать это, но проще всего переключиться на провайдера JPA 2. Поддержка аннотации @OrderColumn - это то, что вам нужно. У Eclipselink есть хорошее руководство по его использованию .
JPA имеет 2 типа списков. В JPA1 есть «упорядоченный список» (который вы видите, порядок определяется некоторым предложением SQL). В JPA2 вы можете иметь «упорядоченные списки» или, альтернативно, «индексированные списки» (где сохраняется порядок создания) ... упомянутый @OrderColumn. Любая реализация JPA2 должна будет поддерживать это, например DataNucleus.
JDO индексировал списки с первого дня