>  기사  >  Java  >  JSP에서 쿠키를 사용하는 방법은 무엇입니까? (코드 예)

JSP에서 쿠키를 사용하는 방법은 무엇입니까? (코드 예)

青灯夜游
青灯夜游원래의
2019-02-11 12:53:032948검색

쿠키는 사용자의 컴퓨터에 저장되는 작은 정보 조각으로, 웹 서버는 사용자가 다음에 방문할 때 쿠키를 사용하여 사용자를 식별합니다. 다음 기사에서는 쿠키에 대한 간략한 이해를 제공하고 JSP를 사용하여 쿠키를 처리하는 방법을 소개합니다. [동영상 튜토리얼 추천: JSP 튜토리얼]

JSP에서 쿠키를 사용하는 방법은 무엇입니까? (코드 예)

쿠키 작동 방식

쿠키는 [키|값] 쌍의 문자열 형식으로 사용자의 컴퓨터에 저장됩니다. 또한 쿠키에는 도메인, 경로 및 시간 초과와 같은 속성이 있습니다.

사용자가 쿠키가 활성화된 웹사이트를 방문할 때마다 웹 서버는 HTTP 헤더에 추가 데이터를 추가하고 웹 브라우저에 응답합니다. 웹 브라우저는 다음에 사용자가 동일한 사이트를 다시 방문할 때 HTTP 요청 헤더의 쿠키를 웹 서버로 보냅니다.

사용자는 Firefox, IE와 같은 쿠키 비활성화 기능을 지원하는 웹 브라우저에서도 쿠키를 비활성화할 수 있습니다...

JSP에서 쿠키를 사용하는 방법은 무엇입니까?

JSP는 javax.servlet.http.Cookie 클래스의 객체를 통해 쿠키를 효율적으로 사용할 수 있는 API를 제공합니다. JSP에서 쿠키를 사용하는 방법을 간략하게 소개하겠습니다.

1. JSP를 사용하여 쿠키 설정

JSP를 사용하여 쿠키 설정은 세 단계로 나눌 수 있습니다.

1) 쿠키 개체 만들기:

쿠키 생성자를 호출해야 합니다. 예:

Cookie cookie = new Cookie("key","value");

참고: 쿠키는 모두 키-값 쌍의 형태로 존재하므로 쿠키 이름과 값을 매개변수로 사용합니다(둘 다 문자열임).

참고: 쿠키 이름과 값에는 공백이나 다음 문자를 포함할 수 없습니다:

[ ] ( ) = , " / ? @ : ;

2), 유효 기간 설정

쿠키에는 만료 시간이라는 고유한 수명 주기가 있습니다. 쿠키의 시간 초과가 설정되지 않은 경우 사용자가 웹 브라우저를 닫을 때 쿠키가 제거됩니다.

setMaxAge() 메서드를 호출하여 쿠키의 유효 기간, 즉 쿠키가 유효한 기간(초)을 설정할 수 있습니다.

예: 유효 기간을 24시간으로 설정하면 이렇게 설정할 수 있습니다

cookie.setMaxAge(60*60*24);

3), HTTP 응답 헤더에 쿠키를 보냅니다

쿠키를 추가하려면 response.addCookie() 메서드를 호출해야 합니다. HTTP 응답 헤더. 예:

response.addCookie(cookie);

간단한 예: 웹 서버에서 쿠키 보내기

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@page import="javax.servlet.http.Cookie"%>
<!DOCTYPE html>
<html>
    <head>
        <title>设置Cookie</title>
    </head>
    <body>
<%
        // 编码,解决中文乱码   
       String str = URLEncoder.encode(request.getParameter("name"),"utf-8");
       // 设置 name 和 url cookie 
      Cookie cookie = new Cookie("php中文网","http://www.php.cn/);
       // 设置cookie过期时间为24小时。
      cookie.setMaxAge(60*60*24);
      // 在响应头部添加cookie
      response.addCookie(cookie);
        %>
    </body>
</html>

JSP를 사용하여 쿠키 읽기

HTTP 요청에서 쿠키를 읽으려면 먼저 요청 객체의 getCookies() 메서드를 호출하세요. 헤더에 있는 사용 가능한 쿠키 목록을 요청하거나 getName() 메서드 및 getValue() 메서드를 사용하여 각 쿠키의 이름과 값을 가져옵니다. 그러면 이러한 모든 쿠키를 찾아볼 수 있습니다. 다음은 getCookies() 메소드를 사용하여 쿠키 정보를 읽는 예입니다.

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@page import="javax.servlet.http.Cookie"%>
<html>
    <head>
        <title>读取Cookie</title>
    </head>
    <body>
        <%
            Cookie[] list = request.getCookies();
            if(list != null){
                for(int i = 0; i < list.length;i++){
                    out.println(list[i].getName() + ":" + list[i].getPath());
                }
            }
        %>
    </body>
</html>

JSP를 사용하여 기존 쿠키 삭제

웹 브라우저로 전송된 기존 쿠키를 삭제하려면 setMaxAge를 사용하면 됩니다. (쿠키 개체의) 메서드는 유효 기간을 0으로 설정합니다.

단계는 다음과 같습니다.

● 기존 쿠키를 가져와 쿠키 개체에 저장합니다.

● 쿠키 유효 기간을 0으로 설정하려면 setMaxAge() 메서드를 사용하세요.

예: 아래는 모든 쿠키를 삭제하는 예입니다.

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@page import="javax.servlet.http.Cookie"%>
<!DOCTYPE html>
<html>
    <head>
        <title>删除cookie</title>
    </head>
    <body>
        <%
            Cookie[] list = request.getCookies();
            if (list != null) {
                for (int i = 0; i < list.length; i++) {
                    list[i].setMaxAge(0);
                    out.println("cookie:" + list[i].getName() + "已删除");
                }
            }
        %>
    </body>
</html>

위 내용은 이 글의 전체 내용입니다. 모든 분들의 공부에 도움이 되었으면 좋겠습니다. 더 흥미로운 내용을 보려면 PHP 중국어 웹사이트의 관련 튜토리얼 열을 주의 깊게 살펴보세요! ! !

위 내용은 JSP에서 쿠키를 사용하는 방법은 무엇입니까? (코드 예)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.