Analyse des objets de session et des instances de méthode en Java
L'objet session est utilisé pour enregistrer l'état d'accès de chaque client dans la portée de la session, afin de suivre l'état de fonctionnement de chaque client. Les informations stockées dans la session peuvent obtenir la validité de ces sessions lorsque le navigateur effectue. demandes ultérieures.
Vous pouvez utiliser l'objet session (l'objet intégré de jsp) directement dans la page jsp, ou vous pouvez récupérer l'objet session via pageContext.getSession() ou request.getSession.
session peut enregistrer les informations de l'utilisateur et mettre en œuvre des fonctions telles que des paniers d'achat.
Le protocole HTTP est un protocole sans état. Le client envoie une requête au serveur, puis le serveur renvoie une réponse. Le serveur n'enregistre pas les informations pertinentes de la connexion. la prochaine connexion À ce stade, le serveur n'a plus d'informations de connexion précédente et ne peut pas déterminer que cette connexion a les mêmes informations client que la connexion précédente. Par conséquent, une session doit être utilisée pour enregistrer les informations sur la connexion.
À partir du moment où le client ouvre le navigateur pour se connecter au serveur jusqu'au moment où le client ferme le navigateur et quitte le serveur, cela s'appelle une session. Lorsqu'un client accède au serveur, il peut se connecter à plusieurs reprises à plusieurs pages du serveur, actualiser une page à plusieurs reprises ou soumettre continuellement des informations à une page, etc. Le serveur doit savoir qu'il s'agit du même client via une méthode, puis un session est nécessaire.
Le principe de fonctionnement de la session est le suivant :
1 Lorsqu'un client accède pour la première fois à une page du serveur, le serveur lui attribuera un objet session. l'utilisateur et spécifie une session unique pour cette session, puis envoie l'ID au client et l'écrit dans le cookie, afin que le client et la session du serveur établissent une correspondance individuelle ; # 2. Lorsque le client continue d'accéder à d'autres sessions sur le serveur Lors de l'utilisation de ressources, le serveur n'attribuera plus de nouveaux objets de session au client jusqu'à ce que le navigateur client soit fermé, expire ou que la méthode invalidate () de la session soit appelé pour l'invalider, et la session entre le client et le serveur se termine.
3. Lorsque le client rouvrira le navigateur pour visiter le site Web, le serveur réattribuera un objet de session au client et réattribuera l'ID de session.
session L'objet est principalement utilisé pour les opérations d'attribut et la gestion de session. Les méthodes couramment utilisées sont les suivantes :
1. Définit la valeur de l'attribut avec le nom spécifié et l'ajoute à la portée de la session. Si l'attribut existe dans la portée de la session, modifie la valeur de l'attribut.
2. public Object getAttribute(String name)
Obtient la valeur de l'attribut avec le nom spécifié dans la portée de la session. n'existe pas, il est renvoyé nul. public void setAttribute(String name,String value)
设定指定名字的属性的值,并将它添加到session会话范围内,如果这个属性是会话范围内存在,则更改该属性的值。
2、public Object getAttribute(String name)
在会话范围内获取指定名字的属性的值,返回值类型为object,如果该属性不存在,则返回null。
3、public void removeAttribute(String name)
,删除指定名字的session属性,若该属性不存在,则出现异常。
4、public void invalidate()
,使session失效。可以立即使当前会话失效,原来会话中存储的所有对象都不能再被访问。
5、public String getId( )
,获取当前的会话ID。每个会话在服务器端都存在一个唯一的标示sessionID,session对象发送到浏览器的唯一数据就是sessionID,它一般存储在cookie中。
6、public void setMaxInactiveInterval(int interval)
设置会话的最大持续时间,单位是秒,负数表明会话永不失效。
7、public int getMaxInActiveInterval()
public void removeAttribute(String name)
, supprimez l'attribut de session avec le nom spécifié. Si l'attribut n'existe pas, une exception se produira. 4. public void invalidate()
, invalide la session. La session en cours peut être invalidée immédiatement et tous les objets stockés dans la session d'origine ne sont plus accessibles. 5. public String getId( )
, récupère l'ID de session actuelle. Chaque session possède un identifiant unique sessionID côté serveur. La seule donnée envoyée par l'objet de session au navigateur est le sessionID, qui est généralement stocké dans un cookie. 6. public void setMaxInactiveInterval(int interval)
Définissez la durée maximale de la session en secondes. Un nombre négatif indique que la session n'expirera jamais. 7. public int getMaxInActiveInterval()
, récupère la durée maximale de la session. 8. Utilisez les méthodes getCreationTime() et getLastAccessedTime() de l'objet session pour obtenir l'heure de création de la session et l'heure du dernier accès, mais la valeur de retour est généralement en millisecondes. conversion pour obtenir l’heure et la date spécifiques.
Date creationTime = new Date(session.getCreationTime()); Date accessedTime = new Date(session.getLastAccessedTime());
<%@ page language="java" import="java.util.*" contentType="text/html;charset=GBK"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>" rel="external nofollow" > <title>session对象方法</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <!-- <link rel="stylesheet" type="text/css" href="styles.css" rel="external nofollow" > --> </head> <body> <b> 会话ID:<%=session.getId() %> <br> 是否新会话:<%=session.isNew() %><br> 设置和获取属性对象:用户名 = <%session.setAttribute("用户名","bing"); %> <%=session.getAttribute("用户名") %><br> <% Date creationTime = new Date(session.getCreationTime()); Date accessedTime = new Date(session.getLastAccessedTime()); %> 会话创建时间:<%=creationTime %><br> 上次访问时间:<%=accessedTime %><br> 会话持续时间(s):<%=session.getMaxInactiveInterval() %><br> <%session.setMaxInactiveInterval(12); %> 修改后的会话持续时间(s):<%=session.getMaxInactiveInterval() %><br> <%session.invalidate(); %> </b> </body> </html>
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
ActionContext context = ActionContext.getContext(); Map request = (Map) context.get("request"); Map session = context.getSession(); Map application = context.getApplication();
ActionContext actionContext = ActionContext.getContext(); HttpServletRequest request = (HttpServletRequest) actionContext .get(ServletActionContext.HTTP_REQUEST); HttpSession session = request.getSession(); ServletContext context = (ServletContext) actionContext .get(ServletActionContext.SERVLET_CONTEXT);
HttpServletRequest request = ServletActionContext.getRequest(); HttpSession session = request.getSession();
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Guide du nombre parfait en Java. Nous discutons ici de la définition, comment vérifier le nombre parfait en Java ?, des exemples d'implémentation de code.

Guide de Weka en Java. Nous discutons ici de l'introduction, de la façon d'utiliser Weka Java, du type de plate-forme et des avantages avec des exemples.

Guide du nombre de Smith en Java. Nous discutons ici de la définition, comment vérifier le numéro Smith en Java ? exemple avec implémentation de code.

Dans cet article, nous avons conservé les questions d'entretien Java Spring les plus posées avec leurs réponses détaillées. Pour que vous puissiez réussir l'interview.

Java 8 présente l'API Stream, fournissant un moyen puissant et expressif de traiter les collections de données. Cependant, une question courante lors de l'utilisation du flux est: comment se casser ou revenir d'une opération FOREAK? Les boucles traditionnelles permettent une interruption ou un retour précoce, mais la méthode Foreach de Stream ne prend pas directement en charge cette méthode. Cet article expliquera les raisons et explorera des méthodes alternatives pour la mise en œuvre de terminaison prématurée dans les systèmes de traitement de flux. Lire plus approfondie: Améliorations de l'API Java Stream Comprendre le flux Forach La méthode foreach est une opération terminale qui effectue une opération sur chaque élément du flux. Son intention de conception est

Guide de TimeStamp to Date en Java. Ici, nous discutons également de l'introduction et de la façon de convertir l'horodatage en date en Java avec des exemples.

Les capsules sont des figures géométriques tridimensionnelles, composées d'un cylindre et d'un hémisphère aux deux extrémités. Le volume de la capsule peut être calculé en ajoutant le volume du cylindre et le volume de l'hémisphère aux deux extrémités. Ce tutoriel discutera de la façon de calculer le volume d'une capsule donnée en Java en utilisant différentes méthodes. Formule de volume de capsule La formule du volume de la capsule est la suivante: Volume de capsule = volume cylindrique volume de deux hémisphères volume dans, R: Le rayon de l'hémisphère. H: La hauteur du cylindre (à l'exclusion de l'hémisphère). Exemple 1 entrer Rayon = 5 unités Hauteur = 10 unités Sortir Volume = 1570,8 unités cubes expliquer Calculer le volume à l'aide de la formule: Volume = π × r2 × h (4

PHP et Python ont chacun leurs propres avantages, et le choix doit être basé sur les exigences du projet. 1.Php convient au développement Web, avec une syntaxe simple et une efficacité d'exécution élevée. 2. Python convient à la science des données et à l'apprentissage automatique, avec une syntaxe concise et des bibliothèques riches.
