Existe-t-il un moyen facile de stocker mes objets de session dans les cookies à la place en mémoire avec Struts2?Enregistrer les objets de session dans les cookies avec Struts2
Merci
Existe-t-il un moyen facile de stocker mes objets de session dans les cookies à la place en mémoire avec Struts2?Enregistrer les objets de session dans les cookies avec Struts2
Merci
Vous pouvez essayer de définir la valeur que vous devez les cookies, vous pouvez le lire avec un intercepteur ou d'action, en fonction de ce que vous avez besoin. Voici comment je définis les cookies dans Struts2.
La méthode de setCookie, en tant que paramètres passent réponse, nom de cookie, la valeur de biscuit, et la période
réponse:
HttpServletResponse response = (HttpServletResponse)
ActionContext.getContext().get(ServletActionContext.HTTP_RESPONSE);
et période, comme ceci: 60 * 60 * 24 * 365 (pour un an)
public static void setCookie(HttpServletResponse response, String name, String value, int period) {
try {
Cookie div = new Cookie(name, value);
div.setMaxAge(60 * 60 * 24 * 365); // Make the cookie last a year
response.addCookie(div);
} catch (Exception e) {
Logger.getLogger(StrutsUtils.class.getName()).log(Level.INFO, "message", e);
}
}
la méthode getCookie, en tant que paramètres passent l'objet de requête et nom du cookie
demande:
HttpServletRequest request = (HttpServletRequest) ActionContext.getContext().get(ServletActionContext.HTTP_REQUEST);
public static String getCookie(HttpServletRequest request, String name) {
String value = null;
try {
for (Cookie c : request.getCookies()) {
if (c.getName().equals(name)) {
value = c.getValue();
}
}
} catch (Exception e) {
Logger.getLogger(StrutsUtils.class.getName()).log(Level.INFO, "message", e);
}
return value;
}
Pas vraiment. Il y a une limite aux données de cookies et vous ne pourrez donc pas stocker beaucoup de cookies. Si vous parlez de stocker des données simples comme une chaîne, un nombre, un booléen ou un autre type simple, les cookies fonctionneront, mais si vous allez sérialiser un objet complexe dans un cookie, vous risquez de rencontrer des problèmes. De plus, vous devez prendre soin de vous protéger du client qui transmet un objet dans un état que vous n'attendez pas. –