Hier ist das Modell, das ich implementiert habe:
public class LoginSession {
private static final Gson gson = new Gson();
private String id;
private String name;
private long timestamp;
public LoginSession(String id, String name) {
this.id = id;
this.name = name;
this.timestamp = System.currentTimeMillis();
}
public String toJson() {
return gson.toJson(this);
}
public static LoginSession fromJson(String json) {
checkArgument(!isNullOrEmpty(json));
return gson.fromJson(json, LoginSession.class);
}
}
Ich fand es sinnlos, für jede LoginSession-Instanz eine neue Gson-Instanz zu erstellen.
Was mich jedoch beunruhigt, sind Fragen der Thread-Sicherheit. Es werden ungefähr 1000+ Instanzen / Sek. Erstellt.
Ist es in Ordnung, die Gson-Instanz als statisches Feld zu verwenden?
Vielen Dank für Ratschläge / Korrekturen.