導航:首頁 > 編程語言 > java對cookie的操作

java對cookie的操作

發布時間:2022-09-13 01:08:06

❶ 怎麼在java中使用cookie

public void addSessionCookie(String name, String val, HttpServletResponse response, String path) {
Cookie cookie = new Cookie(name, val);
cookie.setPath(path);
response.addCookie(cookie);
}

private void addCookie(String name, String val, HttpServletResponse response) {
Cookie cookie = new Cookie(name, val);
cookie.setMaxAge(COOKIE_MAXAGE);//失效時間
cookie.setPath("/");
response.addCookie(cookie);
}

/**
* 查找cookie(未區分版本)
* @param name
* @param req
* @return
*/
private Cookie findCookie(String name, HttpServletRequest req) {
if(req.getCookies()!=null) {
for (Cookie cookie : req.getCookies()) {
if(cookie.getName().equals(name)) {
return cookie;
}
}
}
return null;
}

❷ 怎麼在java中使用cookie

代碼:

Cookie cookie = new Cookie("mytest","123456");

response.addCookie(cookie);

圖解:

下圖中可以看到加入了名為mytest的cookie,它的值為123456。

❸ java如何改變cookie的值

java中通過Cookie[] cs = request.getCookies()語句來獲取所有的cookie,然後對cookie數組進行遍歷,假使你要對名為id的cookie進行修改,那麼在遍歷cookie數組時對每個cookie進行判斷c.getName().equals("id"),如果找到了名為id的cookie,那麼直接新建一個cookie對象,覆蓋名為id的cookie,Cookie cookie = new Cookie("id", id)即可達到改變cookie值的效果。
java中修改cookie值通常使用覆蓋的方式,如果伺服器端發送重復的Cookie那麼會覆蓋原有的Cookie,例如客戶端的第一個請求伺服器端發送的Cookie是:Set-Cookie: a=A;第二請求伺服器端發送的是:Set-Cookie: a=AA,那麼客戶端只留下一個Cookie,即:a=AA。

❹ 怎麼用java獲取cookie

ookie實際上是一個存在你硬碟里的數據,但是這些數據很特殊,只能由web應用提交給瀏覽器幫助存儲,並且我們還能讀取瀏覽器存在本地的cookie
web應用一般只在cookie中存儲一些用戶信息等少量且暫時的數據,數據量大則不適合存儲在cookies
ava通過httpServletRequest介面來訪問瀏覽器請求中的cookies數據(這里先了解一下cookies來龍去脈,代碼待會一並給出)
每個cookie有兩個屬性:鍵 ,值(無特定格式字元串,所以可以diy存數據,不過要注意URL編碼問題,編碼問題待會和代碼一同講)
如果我們需要存儲新的cookie我們可以new一個cookie實例 並通過httpservletRsponse提交到瀏覽器,進而存儲到本地

❺ java中如何獲取cookie

1.設置cookie到客戶端
Cookie c1 = new Cookie("username","hzh");
response.addCookie(c1);

Cookie c2 = new Cookie("password","123");
//設置生命周期為1小時,秒為單位
c2.setMaxAge(3600);
response.addCookie(c2);

response.getWriter().print("ok");

查看此時的cookie文件,發現只寫入了password,因為此時未給 username設置生命周期,它還在客戶端的內存中,並為寫到文件中(此時客戶端關閉此瀏覽器窗口,就丟失了),想寫到客戶端,需要加入c1.setMaxAge(3600)在 response.addCookie(c1);之前

以下是寫入我電腦中的cookie



2.讀取cookie文件

Cookie[] cookies = request.getCookies();
for(Cookie c :cookies ){
System.out.println(c.getName()+"--->"+c.getValue());
}

控制台輸出結果如下:
username--->hzh
password--->123
JSESSIONID--->


注意:
1.伺服器可以向客戶端寫內容, 只能是文本內容
2.客戶端可以阻止伺服器寫入,禁用cookies
3.只能讀取自己webapp寫入的東西

❻ java操作cookie問題

建立一個無生命周期的cookie,即隨著瀏覽器的關閉即消失的cookie,代碼如下

HttpServletRequest request
HttpServletResponse response
Cookie cookie = new Cookie("cookiename","cookievalue");
response.addCookie(cookie);

下面建立一個有生命周期的cookie,可以設置他的生命周期

cookie = new Cookie("cookiename","cookievalue");

cookie.setMaxAge(3600);

//設置路徑,這個路徑即該工程下都可以訪問該cookie 如果不設置路徑,那麼只有設置該cookie路徑及其子路徑可以訪問

cookie.setPath("/");
response.addCookie(cookie);

下面介紹如何讀取cookie,讀取cookie代碼如下

Cookie[] cookies = request.getCookies();//這樣便可以獲取一個cookie數組
for(Cookie cookie : cookies){
cookie.getName();// get the cookie name
cookie.getValue(); // get the cookie value
}

上面就是基本的讀寫cookie的操作。我們在實際中最好進行一下封裝,比如增加一個cookie,我們關注的是cookie的name,value,生命周期,所以進行封裝一個函數,當然還要傳入一個response對象,addCookie()代碼如下

/**
* 設置cookie
* @param response
* @param name cookie名字
* @param value cookie值
* @param maxAge cookie生命周期 以秒為單位
*/
public static void addCookie(HttpServletResponse response,String name,String value,int maxAge){
Cookie cookie = new Cookie(name,value);
cookie.setPath("/");
if(maxAge>0) cookie.setMaxAge(maxAge);
response.addCookie(cookie);
}

讀取cookie的時候,為了方便我們的操作,我們希望封裝一個函數,只要我們提供cookie的name,我們便可以獲取cookie的value,帶著這個想法,很容易想到將cookie封裝到Map裡面,於是進行下面的封裝

/**
* 根據名字獲取cookie
* @param request
* @param name cookie名字
* @return
*/
public static Cookie getCookieByName(HttpServletRequest request,String name){
Map<String,Cookie> cookieMap = ReadCookieMap(request);
if(cookieMap.containsKey(name)){
Cookie cookie = (Cookie)cookieMap.get(name);
return cookie;
}else{
return null;
}
}

/**
* 將cookie封裝到Map裡面
* @param request
* @return
*/
private static Map<String,Cookie> ReadCookieMap(HttpServletRequest request){
Map<String,Cookie> cookieMap = new HashMap<String,Cookie>();
Cookie[] cookies = request.getCookies();
if(null!=cookies){
for(Cookie cookie : cookies){
cookieMap.put(cookie.getName(), cookie);
}
}
return cookieMap;
}

❼ 怎麼在java中使用cookie

一、java保存寫入Cookie
JSP程序片段如下:
//保存寫入Cookie
<%
String cookieName="Sender";
Cookie cookie=new Cookie(cookieName, "Test_Content");
cookie.setMaxAge(10); //存活期為10秒
response.addCookie(cookie);
%>
解讀一下這段代碼:
Cookie cookie=new Cookie(cookieName, "Test_Content");
這一行建立了一個Cookie對象,初始化有兩個參數,第一個參數cookieName定義了Cookie的名字,後一個參數,也是一個字元串,定義了Cookie的內容。也就是用戶希望網頁在用戶的機器上標識的文件內容。
接下來一行:cookie.setMaxAge(10),調用了Cookie中的setMaxAge方法,設定Cookie在用戶機器硬碟上的存活期為10秒。一個Cookie在用戶的硬碟裡面存在的時間並不是無限期的,在建立Cookie對象的時候,我們必須制定Cookie的存活期,超過了這個存活期後,Cookie文件就不再起作用,會被用戶的瀏覽器自行刪除。如果用戶希望用戶在下次訪問這個頁面的時候,Cookie文件仍然有效而且可以被網頁讀出來的話,用戶可以將Cookie的存活期設得稍微長一些。比如cookie.setMaxAge(365*24*60*60)可以讓Cookie文件在一年內有效。
二、 讀取出Cookie
Cookie文件創建好後,自然還需要用戶把它讀出來,代碼片段如下:
<%
Cookie cookies[]=request.getCookies(); //讀出用戶硬碟上的Cookie,並將所有的Cookie放到一個cookie對象數組裡面
Cookie sCookie=null;
String svalue=null;
String sname=null;
for(int i=0;i<cookies.length-1;i++{ //用一個循環語句遍歷剛才建立的Cookie對象數組
sCookie=cookies; //取出數組中的一個Cookie對象
sname=sCookie.getName(); //取得這個Cookie的名字
svalue=sCookie.getValue(); //取得這個Cookie的內容
%>
<%
}
%>
name value
<%=name%> <%=svalue%>
這一小段JSP文件可以讀出用戶硬碟上的所有有效的Cookie,也就是仍然在存活期內的Cookie文件。並用表格的形式列出每個Cookie的名字和內容。
解讀一下這段代碼:
Cookie cookies[]=request.getCookies() 我們用request.getCookies()讀出用戶硬碟上的Cookie,並將所有的Cookie放到一個cookie對象數組裡面。
接下來我們用一個循環語句遍歷剛才建立的Cookie對象數組,我們用sCookie=cookies取出數組中的一個Cookie對象,然後我們用sCookie.getValue()和sCookie.getName()兩個方法來取得這個Cookie的名字和內容。
通過將取出來的Cookie的名字和內容放在字元串變數中,我們就能對其進行各種操作了。在上面的例子里,可通過循環語句的遍歷,將所有Cookie放在一張表格中進行顯示。

❽ 請問java後端通常如何處理cookie

親,Cookie可以將用戶信息及一些其他信息保存到本地(例如瀏覽器),能夠保證與session的跟蹤對接以及辨別用戶身份。

  • 親如果學ava後端通常如何處理cookie的話可以到雲南新華電腦學院來看看,希望可以幫到親

    ❾ 怎麼在java中使用cookie

    在java中使用cookie的詳細步驟,包括添加、修改和刪除操作等!
    http://jingyan..com/article/7c6fb4281f4e5580642c90d0.html

    ❿ 怎麼在java中使用cookie

    1、Cookie的來歷與作用
    Cookie是WEB伺服器通過瀏覽器保存在WWW用戶端硬碟上的一個文本文件,這個文本文件中包含了文本信息。
    文本信息的內容以「名/值」對(key/value)的形式進行存儲。
    可以讓WEB開發者通過程序讀寫這個文本文件。
    XP中保存Cookie的目錄是「C://Documents and Settings\用戶名\Cookies」
    Cookie的作用
    解決瀏覽器用戶與Web伺服器之間無狀態通信。
    2Cookie編程
    //創建對象
    Date date = new Date() ;
    Cookie c = new Cookie("lastVisited",date.toString()) ;
    //設定有效時間 以s為單位
    c.setMaxAge(60) ;
    //設置Cookie路徑和域名
    c.setPath("/") ;
    c.setDomain(".zl.org") ; //域名要以「.」開頭
    //發送Cookie文件
    response.addCookie(c) ;
    //讀取Cookie
    Cookie cookies[] = request.getCookies() ;
    Cookie c1 = null ;
    if(cookies != null){
    for(int i=0;i
    c1 = cookies[i] ;
    out.println("cookie name : " + c1.getName() + " ") ;
    out.println("cookie value :" + c1.getValue() + "
    ");
    }
    }
    //修改Cookie
    Cookie cookies[] = request.getCookies() ;
    Cookie c = null ;
    for(int i=0;i
    c = cookies[i] ;
    if(c.getName().equals("lastVisited")){
    c.setValue("2010-04-3-28") ;
    c.setMaxAge(60*60*12) ;
    response.addCookie(c) ; //修改後,要更新到瀏覽器中
    }
    }

    //刪除Cookie,(將Cookie的有效時間設為0)
    Cookie cookies[] = request.getCookies() ;
    Cookie c = null ;
    for(int i=0;i
    c = cookies[i] ;
    if(c.getName().equals("lastVisited")){
    c.setMaxAge(0);
    response.addCookie(c) ;
    }
    }

    4、使用Cookie的注意事項
    ·Cookie的大小和數量是有限制的。
    ·Cookie在個人硬碟上所保存的文本信息是以明文格式進行保存的,沒有任何的加密措施。
    ·瀏覽器用戶可以設定不使用Cookie。

    閱讀全文

    與java對cookie的操作相關的資料

    熱點內容
    python超簡單編程 瀏覽:257
    獲取命令方 瀏覽:976
    怎樣製作文件夾和圖片 瀏覽:58
    調研編譯寫信息 瀏覽:859
    python馮諾依曼 瀏覽:417
    同時安裝多個app有什麼影響 瀏覽:253
    奧術殺戮命令宏 瀏覽:182
    用sdes加密明文字母e 瀏覽:359
    單片機原理及應用試題 瀏覽:423
    易語言開啟指定文件夾 瀏覽:40
    馬思純參加密室大逃脫 瀏覽:322
    文件夾冬季澆築溫度 瀏覽:712
    京東有返點的aPp叫什麼 瀏覽:603
    如何查看u點家庭伺服器是幾兆 瀏覽:262
    python應用介面怎麼接 瀏覽:67
    腐蝕怎麼進不去伺服器啊 瀏覽:359
    linuxcpiogz 瀏覽:631
    安卓中的布局是什麼文件 瀏覽:397
    dex反編譯部分代碼無法查看 瀏覽:464
    linuxandroid編譯 瀏覽:603