日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java中的Cookie是什么_第74节:Java中的Cookie和Session

發布時間:2024/10/14 java 70 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java中的Cookie是什么_第74节:Java中的Cookie和Session 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

第74節:第74節:Java中的Cookie和Session

ServletContext:

什么是ServletContext,有什么用哦,怎么用呢?

啟動服務器后,會給每個應用程序創建一個ServletContext,并且這個ServletContext對象只有一個。可以用于獲取全局參數,工程下的資源,和存取數據,共享數據。

例子,如何獲取全局參數,如何獲取工程下的資源,如何進行存取數據,用例子代碼進行展示。

getServletContext().getInitParams();和getServletConfig().getInitParams();

getServletContext().getRealPath()

getServletContext().getReasourceAsStream()

InputStream is = getClass().getClassLoader().getReasourceAsStream();

相對路徑和絕對路徑

getServletContext().setAttribute()

getServletContext().getAttribute()

獲取登錄成功次數

HttpServletRequest:

請求對象,用于封裝客戶端提交過來的數據或者信息。

可以獲取頭信息,提交過來的數據:

`request.getParameter("name"); // dashucoding url連接拼接

中文亂碼情況

HttpServletResponse:

響應對象,服務器要返回給客戶端的數據

跳轉頁面:

response.setStatus(302);

response.setHeader("Location","success.html");

文件下載:輸出流和輸入流的對接

下載中文名字的資源:

// index.html

Insert title here

默認servlet去下載

aa.jpg

bb.txt

cc.rar


手動下載

aa.jpg

bb.txt

cc.rar

達叔.png

// Demo01.java

package com.dashucoding.servlet;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

/**

* Servlet implementation class Demo01

*/

public class Demo01 extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

// 獲取要下載的文件名字

String fileName = request.getParameter("filename");

// 獲取這個文件在tomcat里面的絕對路徑地址

String path = getServletContext().getRealPath("download/"+fileName);

// 用于用戶下載

response.setHeader("Content-Disposition", "attachment; filename="+fileName);

// 轉化成輸入流

InputStream is = new FileInputStream(path);

OutputStream os = response.getOutputStream();

int len = 0;

byte[] buffer = new byte[1024];

while( (len = is.read(buffer)) != -1) {

os.write(buffer, 0, len);

}

os.close();

is.close();

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

doGet(request, response);

}

}

瀏覽器

// Demo01.java

package com.dashucoding.servlet;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;

import java.net.URLEncoder;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

/**

* Servlet implementation class Demo01

*/

public class Demo01 extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

// 獲取要下載的文件名字

String fileName = request.getParameter("filename");

// get請求有中文

//byte[] bytes = fileName.getBytes("ISO-8859-1");

//new String(bytes, "UTF-8");

fileName = new String(fileName.getBytes("ISO-8859-1"), "UTF-8");

System.out.println("fileName="+fileName);

// 獲取這個文件在tomcat里面的絕對路徑地址

String path = getServletContext().getRealPath("download/"+fileName);

// 對中文的名字進行編碼處理

// 獲取來訪客戶端的類型

String clientType = request.getHeader("User-Agent");

if (clientType.contains("Firefox")) {

fileName = DownLoadUtil.base64EncodeFileName(fileName);

}else {

fileName = URLEncoder.encode(fileName, "UTF-8");

}

// 用于用戶下載

response.setHeader("Content-Disposition", "attachment; filename="+fileName);

// 轉化成輸入流

InputStream is = new FileInputStream(path);

OutputStream os = response.getOutputStream();

int len = 0;

byte[] buffer = new byte[1024];

while( (len = is.read(buffer)) != -1) {

os.write(buffer, 0, len);

}

os.close();

is.close();

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

doGet(request, response);

}

}

// DownLoadUtil

package com.dashucoding.servlet;

import java.io.UnsupportedEncodingException;

import sun.misc.BASE64Encoder;

public class DownLoadUtil {

public static String base64EncodeFileName(String fileName) {

BASE64Encoder base64Encoder = new BASE64Encoder();

try {

return "=?UTF-8?B?"

+ new String(base64Encoder.encode(fileName

.getBytes("UTF-8"))) + "?=";

} catch (UnsupportedEncodingException e) {

e.printStackTrace();

throw new RuntimeException(e);

}

}

}

登錄

// LoginServlet

package com.dashucoding.servlet;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

/**

* Servlet implementation class LoginServlet

*/

public class LoginServlet extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

// public void setContextType(String type)

// 設置將發送到客戶端的響應的內容類型,如果該響應尚未提交,給定內容類型可能包含字符編碼規范,例如

// text/html;charseet=UTF-8,如果在調用 getWriter之前調用此方法,則只根據給定內容類型設置響應的字符編碼

response.setContentType("text/html;charset=utf-8");

String userName = request.getParameter("username");

String password = request.getParameter("password");

if("admin".equals(userName) && "123".equals(password)) {

response.getWriter().write("登錄成功");

}else {

response.getWriter().write("登錄失敗");

}

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

doGet(request, response);

}

}

// web

RequestRedirctionDemo

index.html

index.htm

index.jsp

default.html

default.htm

default.jsp

LoginServlet

LoginServlet

com.dashucoding.servlet.LoginServlet

LoginServlet

/login

// login

Insert title here

賬號:

密碼:

// LoginServlet

package com.dashucoding.servlet;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

/**

* Servlet implementation class LoginServlet

*/

public class LoginServlet extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

// public void setContextType(String type)

// 設置將發送到客戶端的響應的內容類型,如果該響應尚未提交,給定內容類型可能包含字符編碼規范,例如

// text/html;charseet=UTF-8,如果在調用 getWriter之前調用此方法,則只根據給定內容類型設置響應的字符編碼

response.setContentType("text/html;charset=utf-8");

String userName = request.getParameter("username");

String password = request.getParameter("password");

if("admin".equals(userName) && "123".equals(password)) {

// response.getWriter().write("登錄成功");

response.setStatus(302);

response.setHeader("Location", "login_success.html");

}else {

response.getWriter().write("登錄失敗");

}

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

doGet(request, response);

}

}

Insert title here

登錄成功!!!

重定向

package com.dashucoding.servlet;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

/**

* Servlet implementation class LoginServlet

*/

public class LoginServlet extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

// public void setContextType(String type)

// 設置將發送到客戶端的響應的內容類型,如果該響應尚未提交,給定內容類型可能包含字符編碼規范,例如

// text/html;charseet=UTF-8,如果在調用 getWriter之前調用此方法,則只根據給定內容類型設置響應的字符編碼

response.setContentType("text/html;charset=utf-8");

String userName = request.getParameter("username");

String password = request.getParameter("password");

if("admin".equals(userName) && "123".equals(password)) {

// response.getWriter().write("登錄成功");

/*response.setStatus(302);

response.setHeader("Location", "login_success.html");*/

// 重定向寫法,重新定位方向

// response.sendRedirect("login_success.html");

// 請求轉發的寫法

request.getRequestDispatcher("login_success.html").forward(request, response);

}else {

response.getWriter().write("登錄失敗");

}

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

doGet(request, response);

}

}

Cookie

用于自動登錄,瀏覽記錄等,是服務器給客戶端的.

Cookie cookie = new Cookie("a","b");

// 響應

response.addCookie(cookie);

獲取Cookie

package com.dashucoding.servlet;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.Cookie;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

/**

* Servlet implementation class Demo01

*/

public class Demo01 extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

//Cookie的簡單使用。

//cookie 發送給客戶端,并且保存在客戶端上的一份小數據

response.setContentType("text/html;charset=utf-8");

//發送cookie給客戶端

Cookie cookie = new Cookie("aa", "bb");

//給響應,添加一個cookie

response.addCookie(cookie);

response.getWriter().write("請求成功了...");

//獲取客戶端帶過來的cookie

Cookie[] cookies = request.getCookies();

if(cookies != null){

for (Cookie c : cookies) {

String cookieName = c.getName();

String cookieValue = c.getValue();

System.out.println(cookieName + " = "+ cookieValue);

}

}

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doGet(request, response);

}

}

Cookie是一份小數據,是服務器給客戶端,存儲在客戶端上的一份小數據.

http請求是無狀態的.

在響應的時候添加Cookie

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

// 添加cookie

response.addCookie(cookie);

在客戶端信息里,響應頭中多了Set-Cookie

獲取客戶端帶來的Cookie

Cookie[] cookies = request.getCookies();

if(cookies != null){

for(Cookie c : cookies){

String cookieName = c.getName();

String cookieValue = c.getValue();

System.out.println(cookieName + " = " + cookieValue);

}

}

cookie過期

public int getMaxAge()

返回以秒為單位指定的cookie的最大生存時間.

public void setMaxAge(int expiry)

設置cookie的最大生存時間,以秒為單位.

如何顯示上次登錄時間

可以進行判斷賬號密碼,如果上次有登錄過,那么顯示上次的登錄時間.這里分兩種情況,獲取帶過來的cookie進行判斷,第一種是沒有cookie的,第一次登錄,輸出登錄成功或者失敗,然后給客戶端添加cookie,new Cookie(),第二種的登錄過的,還是要輸出登錄成功或者是失敗,獲取以前的cookie.時間戳要重置怎么理解?

package com.dashucoding.servlet;

import java.io.IOException;

import java.util.Date;

import javax.servlet.ServletException;

import javax.servlet.http.Cookie;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import com.dashucoding.util.CookieUtil;

/**

* Servlet implementation class Demo03

*/

public class Demo03 extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

response.setContentType("text/html;charset=utf-8");

String userName = request.getParameter("username");

String password = request.getParameter("password");

if("admin".equals(userName) && "123".equals(password)){

//獲取cookie last-name --- >

Cookie [] cookies = request.getCookies();

//從數組里面找出我們想要的cookie

Cookie cookie = CookieUtil.findCookie(cookies, "last");

//是第一次登錄,沒有cookie

if(cookie == null){

Cookie c = new Cookie("last", System.currentTimeMillis()+"");

c.setMaxAge(60*60); //一個小時

response.addCookie(c);

response.getWriter().write("歡迎您, "+userName);

}else{

//1. 去以前的cookie第二次登錄,有cookie

long lastVisitTime = Long.parseLong(cookie.getValue());

//2. 輸出到界面,

response.getWriter().write("歡迎您, "+userName +",上次來訪時間是:"+new Date(lastVisitTime));

//3. 重置登錄的時間

cookie.setValue(System.currentTimeMillis()+"");

response.addCookie(cookie);

}

}else{

response.getWriter().write("登陸失敗 ");

}

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doGet(request, response);

}

}

如何顯示商品瀏覽記錄

獲取提交過來的id,把id放入到cookie里,跳轉界面.

servlet?id=1;

servlet?id=2;

獲取cookie 1

1#2

setValue("1#2");

jsp

// index.jsp

pageEncoding="ISO-8859-1"%>

Insert title here


---------1------------


---------2------------


---------3------------

瀏覽記錄

package com.dashucoding.util;

import javax.servlet.http.Cookie;

public class CookieUtil {

/**

* 從一個cookie數組中找到具體我們想要的cookie對象

* @param cookies

* @param name

* @return

*/

public static Cookie findCookie(Cookie[] cookies , String name){

if(cookies != null){

for (Cookie cookie : cookies) {

if(name.equals(cookie.getName())){

return cookie;

}

}

}

return null;

}

}

Cookie[] cookies = request.getCookies();

Cookie cookie = CookieUtil.findCookie(cookies, "history");

// 如果cookie是空,表明沒有瀏覽商品

if(cookie == null){

%>

您還沒有瀏覽任何商品!

}else{

// 不是空,表明有瀏覽記錄

String[] ids = cookie.getValue().split("#");

for(String id : ids){

%>

}

}

%>

package com.dashucoding.servlet;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.Cookie;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import com.dashucoding.util.CookieUtil;

public class ProductInfoServlet extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

String id = request.getParameter("id");

Cookie[] cookies = request.getCookies();

Cookie cookie = CookieUtil.findCookie(cookies, "history");

if (cookie==null) {

Cookie cook = new Cookie("history", id);

cook.setMaxAge(60*60*24*7);

response.addCookie(cook);

}else{

String id2 = cookie.getValue();

cookie.setValue(id+"#"+id2);

cookie.setMaxAge(60*60*24*7);

response.addCookie(cookie);

}

response.sendRedirect("product_info.htm");

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doGet(request, response);

}

}

清除瀏覽記錄

清除cookie

package com.dashucoding.servlet;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.Cookie;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

/**

* Servlet implementation class ClearHistory

*/

public class ClearHistory extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

// 清除cookie

Cookie c = new Cookie("history", "");

c.setMaxAge(0);

//c.setPath("/demo1");

response.addCookie(c);

response.sendRedirect("product_list.jsp");

}

protected void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

doGet(request, response);

}

}

獲取cookie,添加cookie

request.getCookie();

response.addCookie();

Cookie分類

cookie.setMaxAge(0); // 刪除

cookie.setMaxAge(100); // 100秒

Cloneable

創建一個cookie,cookie是servlet發送到web瀏覽器中的少量信息,這些信息是由瀏覽器保存,然后發送回到服務器中.

cookie的值是唯一標識客戶端的,可以用于cookie會話管理.一個cookie擁有一個名,值,可以有一些可選屬性.但又cookie也存在一些問題.瀏覽器支持每個web服務器又20個cookie,共有300個cookie,每個限制在4KB.

安全隱患,大小與個數限制.

Session

會話,Session是基于Cookie的一種會話機制.Cookie是服務器返回一部分小數據在客戶端,存放在客戶端上.

Session是把數據存放在服務端.

interface httpsession

public interface httpSession

常用的方法

package com.dashucoding.servlet;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

/**

* Servlet implementation class Demo01

*/

public class Demo01 extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

HttpSession session = request.getSession();

// 得到會話ID

session.getId();

// 存值

session.setAttribute(name, value);

// 取值

session.getAttribute(name);

// 移植

session.removeAttribute(name);

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

doGet(request, response);

}

}

// web.xml

SessionDemo02

index.html

index.htm

index.jsp

default.html

default.htm

default.jsp

LoginServlet

LoginServlet

com.dashucoding.servlet.LoginServlet

LoginServlet

/login

// LoginServlet

package com.dashucoding.servlet;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

/**

* Servlet implementation class LoginServlet

*/

public class LoginServlet extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

response.setContentType("text/html;charset=utf-8");

response.getWriter().write("收到請求了");

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

doGet(request, response);

}

}

// login.jsp

pageEncoding="UTF-8"%>

Insert title here

賬號:

密碼:

session創建與銷毀

創建 request.getSession();

銷毀 Redis session 存放在服務器內存中的數據

session關閉服務器銷毀

session會話時間過期

// 可以改的 conf\web.xml 有效期30分鐘

30

package com.dashucoding.servlet;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

/**

* Servlet implementation class LoginServlet

*/

public class LoginServlet extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

response.setContentType("text/html;charset=utf-8");

String sessionid = request.getSession().getId();

System.out.println("sessionid="+sessionid);

// cookid id -> sessionid

response.getWriter().write("收到請求了");

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

doGet(request, response);

}

}

session分析

商品列表添加商品,點擊商品添加到購物車,到servlet.

獲取點擊商品標識id,存儲到購物車,跳轉界面.

判斷購物車是否有商品,有數量加1,沒有數量等于1.

購物車

package com.dashucoding.servlet;

import java.io.IOException;

import java.util.LinkedHashMap;

import java.util.Map;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

/**

* Servlet implementation class CarServlet

*/

public class CarServlet extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

response.setContentType("text/html;charset=utf-8");

// 獲取添加到購物車的商品id

int id = Integer.parseInt(request.getParameter("id"));

// cat dog big pig

String [] names = {"cat","dog","big","pig"};

// 取到id對應商品

String name = names[id];

// 獲取購物車存放東西的session

// 把一個map 對象存放到session里面去,保證只有一次

Map map = (Map) request.getSession().getAttribute("cat");

if(map == null) {

// value -> map

map = new LinkedHashMap();

request.getSession().setAttribute("cat", map);

}

// 判斷購物車里有沒有該商品

if(map.containsKey(name)) {

// 在原來基礎上 +1

map.put(name, map.get(name)+1);

}else {

map.put(name, 1);

}

response.getWriter().write("

繼續購物

");

response.getWriter().write("

去購物車結算

");

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

doGet(request, response);

}

}

pageEncoding="UTF-8"%>

Insert title here

cat

dog

big

pig

// cart.jsp

pageEncoding="UTF-8"%>

Insert title here

您的購物車商品如下:

// 獲取到map

Map map = (Map)session.getAttribute("cat");

// 遍歷

if(map != null){

for(String key : map.keySet()){

int value = map.get(key);

// key:商品名稱 value:商品名稱

//

名稱: 數量:

%>

名稱: 數量:

}

}

%>

package com.dashucoding.servlet;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

/**

* Servlet implementation class ClearCartServlet

*/

public class ClearCartServlet extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

HttpSession session = request.getSession();

// cat購物車

session.removeAttribute("cat");

response.sendRedirect("cart.jsp");

}

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

// TODO Auto-generated method stub

doGet(request, response);

}

}

pageEncoding="UTF-8"%>

Insert title here

您的購物車商品如下:

// 獲取到map

Map map = (Map)session.getAttribute("cat");

// 遍歷

if(map != null){

for(String key : map.keySet()){

int value = map.get(key);

// key:商品名稱 value:商品名稱

//

名稱: 數量:

%>

名稱: 數量:

}

}

%>

清空購物車

public void invalidate()

使用,會話無效,取消對任何綁定到它的對象.

// 強制干掉會話

// session.invalidate();

小結

cookie和session

Cookie

獲取上一次訪問時間,獲取瀏覽記錄,數據存放在客戶端

Session

會話技術,數據存放在服務端

setAttribute 存放數據

getAttribute 取數據

removeAttribute 移除

getSessionId() 獲取會話id

invalidate() 讓會話失效

response.addCookie(new Cookie())

request.getSession 創建

如果看了覺得不錯

點贊!轉發!

達叔小生:往后余生,唯獨有你

You and me, we are family !

90后帥氣小伙,良好的開發習慣;獨立思考的能力;主動并且善于溝通

簡書博客: 達叔小生

https://www.jianshu.com/u/c785ece603d1

結語

下面我將繼續對 其他知識 深入講解 ,有興趣可以繼續關注

小禮物走一走 or 點贊

總結

以上是生活随笔為你收集整理的java中的Cookie是什么_第74节:Java中的Cookie和Session的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。