Latest web development tutorials

réponse du serveur JSP

Réponse de réponse est principalement le résultat de post-traitement conteneur JSP pour passer au client. Vous pouvez définir la réponse HTTP par des variables d'état et les données de transmission, telles que les informations d'en-tête HTTP au client Cookie,.

Une réponse typique ressemble à ceci:

HTTP/1.1 200 OK
Content-Type: text/html
Header2: ...
...
HeaderN: ...
  (空行)
<!doctype ...>
<html>
<head>...</head>
<body>
...
</body>
</html>

La ligne d'état contient les informations de version HTTP, tels que HTTP / 1.1, un code d'état, tels que 200, il y a un très court message correspondant au code d'état, comme OK.

Le tableau suivant résume un en-tête de réponse HTTP1.1 la partie la plus utile du réseau de programmation Vous aurez souvent les voir:

tête de réponse description
permettre Indique que le serveur prend en charge les méthodes de requête (GET, POST, etc.)
Cache-Control Indique le document de réponse peut être mise en cache des conditions de sécurité. La valeur est généralement publique, privée ou no-cache, et ainsi de suite. signifie que les documents publics peuvent être mis en cache, privé signifie que le document est seulement un service utilisateur unique et seulement utiliser un cache privé. signifie No-cache que le document ne sera pas mis en cache.
raccordement navigateur de commande si vous souhaitez utiliser les connexions HTTP persistantes. fermer les navigateurs de commande de valeur ne pas utiliser les connexions HTTP persistantes, et gardez-vie des moyens en utilisant les connexions persistantes.
Content-Disposition Laissez le navigateur, l'utilisateur doit répondre à un nom donné stocké sur le disque
Content-Encoding Page règles de codage de transmission spécifiée
Content-Language Description Langue le document utilisé, comme en, en-us ,, ru etc.
Content-Length Elle indique le nombre d'octets de la réponse. Seulement dans votre navigateur pour utiliser persistant utile de if (keep-alive) les connexions HTTP
Content-Type type MIME du document montre que l'utilisation de
Expire Lorsque sont spécifiés expiré et supprimé du cache
Last-Modified Spécifié dans le document a été modifié. Les clients peuvent mettre en cache des documents et de fournir un en- tête de demande If-Modified-Since dans les demandes ultérieures
emplacement En 300 secondes, y compris tous ont un code d'état en réponse à l'adresse, le navigateur se reconnecte automatiquement et récupère le nouveau document
rafraîchir Indiquez à quelle fréquence le navigateur demande une mise à jour de page.
Relancez-Après Et 503 (Service indisponible) utilisés ensemble pour indiquer à l'utilisateur combien de temps la demande va obtenir une réponse
Set-Cookie biscuit correspondant indique la page en cours

HttpServletResponse classe

objet de réponse javax.servlet.http.HttpServletResponse est une instance de la classe. Comme serveur crée des objets de demande, il va créer une réponse du client.

objet de réponse définit le processus pour créer les informations d'en-tête de l'interface HTTP. En utilisant cet objet, les développeurs peuvent ajouter nouveau cookie ou timestamp, ainsi que code d'état HTTP, et ainsi de suite.

Le tableau ci-après utilisés pour définir les méthodes d'en-têtes de réponse HTTP qui ont fourni par la classe HttpServletResponse:

SN Méthode & Description
1 Chaîne encodeRedirectURL (String url)

Sur sendRedirect () méthode d'URL utilisé pour coder
2 Chaîne encodeURL (String url)

L'encodage d'URL, URL de retour qui contient l'ID de session
3 containsHeader booléenne (String name)

Renvoie l'en-tête de réponse spécifié si
4 booléen isCommitted ()

Retourne si la réponse a été soumis au client
5 addCookie void (Cookie cookie)

Ajoute le cookie spécifié à la réponse
6 addDateHeader void (String nom, date longue )

Ajouter les en-têtes de réponse et la date spécifiée nom
7 addHeader void (String name, String value )

Ajouter les en-têtes de réponse et les valeurs nom spécifié
8 addIntHeader void (String name, int value )

Ajouter les en-têtes de réponse et valeur int avec le nom spécifié
9 annuler flushBuffer ()

Tout le contenu du cache écrit au client
10 void reset ()

Effacer tout cache toutes les données, y compris les codes d'état et les en-têtes de réponse différents
11 annuler resetBuffer ()

cache de données de base Effacer, non compris les en-têtes de réponse et les codes d'état
12 annuler sendError (int sc)

En utilisant le code de statut spécifié envoyé au client une réponse d'erreur, puis vider le cache
13 vide sendError (int sc, String msg )

À l'aide du code d'état spécifié et un message d'erreur est envoyé en réponse au client
14 annuler sendRedirect (emplacement String)

En utilisant l'URL spécifiée envoyée au client une réponse indirecte temporaire
15 setBufferSize void (int size)

Définissez la taille de la mémoire tampon du corps de réponse
16 setCharacterEncoding vide (String charset)

Indique un ensemble de code de réponse (MIME du jeu de caractères), comme UTF-8
17 setContentLength void (int len)

Indique servlets HTTP en réponse à la longueur du contenu, la méthode utilisée pour définir le HTTP Content-Length
18 setContentType void (type String)

Définissez le type de la réponse de contenu, si la réponse n'a pas encore été soumis, alors
19 setDateHeader void (String nom, date longue )

Avec le nom spécifié et définir la valeur de la réponse nom et le contenu en-tête
20 setHeader void (String name, String value )

Avec le nom spécifié et définir la valeur de la réponse nom et le contenu en-tête
21 setIntHeader void (String name, int value )

Avec le nom spécifié et définir la valeur de la réponse nom et le contenu en-tête
22 setLocale void (loc Locale)

réponse de réglage des paramètres régionaux, si la réponse n'a pas encore été soumis, alors
23 setStatus void (int sc)

Réglez le code d'état de réponse

Tête de réponse HTTP Exemple de programme

L'exemple suivant setIntHeader () méthode et setRefreshHeader () utilise pour simuler une horloge numérique:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>本教程(w3big.com)</title>
</head>
<body>
<h2>自动刷新实例</h2>
<%
   // 设置每隔5秒自动刷新
   response.setIntHeader("Refresh", 5);
   // 获取当前时间
   Calendar calendar = new GregorianCalendar();
   String am_pm;
   int hour = calendar.get(Calendar.HOUR);
   int minute = calendar.get(Calendar.MINUTE);
   int second = calendar.get(Calendar.SECOND);
   if(calendar.get(Calendar.AM_PM) == 0)
      am_pm = "AM";
   else
      am_pm = "PM";
   String CT = hour+":"+ minute +":"+ second +" "+ am_pm;
   out.println("当前时间: " + CT + "\n");
%>
</body>
</html>

Enregistrez le code main.jsp ci-dessus, puis y accéder via un navigateur. Il permet d'afficher toutes les cinq secondes à l'heure actuelle.

Nous pouvons regarder les présentations Gif graphiques suivants:

Vous pouvez également modifier le code ci-dessus vous-même, essayez d'utiliser d'autres méthodes, nous serons en mesure d'obtenir une compréhension plus profonde.