Ist dies die richtige Methode zum Speichern eines Werts in Sitzung in Struts2?Sitzung in Struts 2
Map<String, Object> session = ActionContext.getContext().getSession();
session.put("user", "USERNAME");
Ist dies die richtige Methode zum Speichern eines Werts in Sitzung in Struts2?Sitzung in Struts 2
Map<String, Object> session = ActionContext.getContext().getSession();
session.put("user", "USERNAME");
SessionAware Schnittstelle in Streben 2.x, braucht unsere Action-Klasse SessionAware Schnittstelle zu erhalten, um HTTP-Sitzungs-Verhalten in unsere Action-Klasse zu implementieren.
Wenn wir von der SessionAware-Schnittstelle implementieren, müssen wir die Methode setSession() von SessionAware in unserer Action-Klasse überschreiben. Wenn wir unsere Aktionsklasse von der SessionAware-Schnittstelle implementieren, injiziert struts 2 controller nicht genau das Sitzungsobjekt, sondern injiziert ein Map-Objekt mit ähnlichem Verhalten.
Map m;
public void setSession(Map m)
{
this.m=m;
}
public String execute()
{
m.put("user", "USERNAME");
return SUCCESS;
}
können Sie das tun, aber der bevorzugte Weg ist durch die Implementierung der SessionAware-Schnittstelle. Lesen Sie [hier] (http://struts.apache.org/2.0.6/docs/how-do-we-get-access-to-the-session.html) und [hier] (http: // splitter. com.au/how-to-use-sessions-with-struts-2) für weitere Informationen. – Jasonw
sehr hilfreiche Links, danke. –
Das Abrufen des Sitzungsobjekts von actionContext ist kein Problem, da es auf TheadLocal implementiert ist, obwohl es keine gute Übung ist. –