导航:首页 > 编程语言 > 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的操作相关的资料

    热点内容
    dos选择命令 浏览:16
    apm固件编译到单片机 浏览:120
    联通深蓝卡都包含什么app 浏览:263
    如何判断网络服务器正常 浏览:649
    路由器搭桥远端服务器地址是什么 浏览:515
    编译动态库时会连接依赖库吗 浏览:707
    淘宝手机加密是随机的吗 浏览:672
    解压包子怎么装饰 浏览:585
    四个数凑24算法 浏览:676
    哪一种不是vi编译器的模式 浏览:169
    xp在此处打开命令窗口 浏览:128
    代码编译运行用什么软件 浏览:998
    动态库在程序编译时会被连接到 浏览:761
    python超简单编程 浏览:259
    获取命令方 浏览:977
    怎样制作文件夹和图片 浏览:60
    调研编译写信息 浏览:861
    python冯诺依曼 浏览:419
    同时安装多个app有什么影响 浏览:254
    奥术杀戮命令宏 浏览:184