Если вам нужна только одна копия настроек для вашего приложения (например, синглтона), я бы предложил что-то вроде этого:
@Entity
class Settings {
@Id int id = 0;
boolean showFriendsList = false;
String marketingText = "You'll love it";
byte[] mainImage = ...;
}
Поскольку для идентификатора установлено одно значение, при вызове команды save он всегда обновляет один объект. Если вы позвоните по команде insert, и она уже есть, вы получите сообщение об ошибке (если вы проверяете наличие ошибок).
Вы можете обновить сущность, используя get / change / save или update semantics.
Datastore ds = ...;
//get/change/save
Settings s = ds.find(Settings.class).get(); //like findOne in the shell/driver
s.showFriendsList = true;
ds.save(s);
//or update
ds.updateFirst(ds.find(Settings.class), ds.creatUpdateOperations(Settings.class).set("showFiendsList", true));