javacookie加密
‘壹’ 请问java后端通常如何处理cookie
亲,Cookie可以将用户信息及一些其他信息保存到本地(例如浏览器),能够保证与session的跟踪对接以及辨别用户身份。
亲如果学ava后端通常如何处理cookie的话可以到云南新华电脑学院来看看,希望可以帮到亲
‘贰’ 怎么在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;
}
‘叁’ javaweb记住密码cookie用md5加密
数据库不错明文密码,存的也是加密后的,两个加密后的对比,一样就通过了啊,不过密码建议总更安全的加密方式
‘肆’ 怎么在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。
5、实例:Servlet中的Cookie编程
cookieInput.html页面
SetCookie.java
GetCookie.java
cookieInput.html页面中的参数提交到SetCookie.java中,由SetCookie.java保存在浏览器的Cookie中,在SerCookie.java中链接到GetCookie.java从而读取刚刚保存的Cookie。
SetCookie.java
:
public
void doPost(HttpServletRequest request, HttpServletResponse response)
throws
ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
PrintWriter
out = response.getWriter();
String
username = request.getParameter("username") ;
//保存Cookie
if(username
!=""){
Cookie
c1 = new Cookie("username",username) ;
SimpleDateFormat
sdf = new SimpleDateFormat("yyyy-MM-dd") ;
Cookie
c2 = new Cookie("lastVisited",sdf.format(new java.util.Date())) ;
c1.setMaxAge(60*60*60*12*30)
;
c2.setMaxAge(60*60*60*12*30)
;
response.addCookie(c1)
;
response.addCookie(c2)
;
out.println("Cookie保存成功!");
out.println("
")
;
out.println("读取Cookie") ;
}else{
response.sendRedirect("../cookieInput.html")
;
}
out.flush();
out.close();
}
GetCookie.java:
public
void doPost(HttpServletRequest request, HttpServletResponse response)
throws
ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
PrintWriter
out = response.getWriter();
out.println("
");
out.println("");
out.println("
");
out.println("
");
//读取Cookie
Cookie
cookies[] = request.getCookies() ;
Cookie
c = null ;
if(cookies
!= null){
for(int
i=0;i
c
= cookies[i] ;
if(c.getName().equals("username")){
out.println("用户名:
"+c.getValue());
out.println("
");
}
if(c.getName().equals("lastVisited")){
out.println("上次登录的时间:
"+c.getValue());
}
}
}else{
out.println("No
cookie !");
}
out.println("
");
out.println("
");
out.flush();
out.close();
}
‘伍’ java cookie
1.设置Cookie
Cookie cookie = new Cookie("key", "value");
cookie.setMaxAge(60); //设置60秒生存期,如果设置为负值的话,则为浏览器进程Cookie(内存中保存),关闭浏览器就失效。
cookie.setPath("/test/test2"); //设置Cookie路径,不设置的话为当前路径(对于Servlet来说为request.getContextPath() + web.xml里配置的该Servlet的url-pattern路径部分)
response.addCookie(cookie);
2.读取Cookie
该方法可以读取当前路径以及“直接父路径”的所有Cookie对象,如果没有任何Cookie的话,则返回null
Cookie[] cookies = request.getCookies();
3.删除Cookie
Cookie cookie = new Cookie("key", null);
cookie.setMaxAge(0); //设置为0为立即删除该Cookie
cookie.setPath("/test/test2"); //删除指定路径上的Cookie,不设置该路径,默认为删除当前路径Cookie
response.addCookie(cookie);
4.修改Cookie
首先读取cookie
Cookie[] cks = request.getCookies();
for (int i = 0; i < cks.length; i ++){
Cookie cookie = cks[i];
if (cookie.getName().equalsIgnoreCase("cookiename")){
cookie.setValue("newvalue"); 设置新的值
response.addCookie(cookie);
}
}
5.注意:假设路径结构如下
/
/test
/test/test2
/test345
/test555/test666
a.相同键名的Cookie(值可以相同或不同)可以存在于不同的路径下。
b. 删除时,如果当前路径下没有键为"key"的Cookie,则查询全部父路径,检索到就执行删除操作(每次只能删除一个与自己最近的父路径Cookie)
FF.必须指定与设定cookie时使用的相同路径来删除改cookie,而且cookie的键名不论大写、小写或大小混合都要指定路径。
IE.键名小写时,如果当前路径为/test/test2,如果找不到再向上查询/test、/test555、/test345,如果还找不到就查询/ 。(/test555/test666不查询)
键名大小写混合或大写时,不指定路径则默认删除当前路径,并且不向上查询。
c.读取Cookie时只能读取直接父路径的Cookie。
如果当前路径为/test/test2,要读取的键为"key"。当前路径读取后,还要读取/test,/test读取后,还要读取/
d.在做Java的web项目时,由于一般的Web服务器(如Tomcat或Jetty)都用Context来管理不同的Web Application,这样对于每个Context有不同的Path,
在一个Server中有多个Web Application时要特别小心,不要设置Path为/的Cookie,容易误操作。(当然前提是域名相同)
‘陆’ java 怎么设置cookie
java设置cookie是通过 Servlet 设置的。
通过 Servlet 设置 Cookies 包括三个步骤:
(1) 创建一个 Cookie 对象:您可以调用带有 cookie 名称和 cookie 值的 Cookie 构造函数,cookie 名称和 cookie 值都是字符串。
Cookie cookie = new Cookie("key","value");
请记住,无论是名字还是值,都不应该包含空格或以下任何字符:
[ ] ( ) = , " / ? @ : ;
(2) 设置最大生存周期:您可以使用 setMaxAge 方法来指定 cookie 能够保持有效的时间(以秒为单位)。下面将设置一个最长有效期为 24 小时的 cookie。
cookie.setMaxAge(60*60*24);
(3) 发送 Cookie 到 HTTP 响应头:您可以使用 response.addCookie 来添加 HTTP 响应头中的 Cookies,如下所示:
response.addCookie(cookie);
(4)完整实例:
// 导入必需的 java 库
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
// 扩展 HttpServlet 类
public class HelloForm extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
{
// 为名字和姓氏创建 Cookies
Cookie firstName = new Cookie("first_name",
request.getParameter("first_name"));
Cookie lastName = new Cookie("last_name",
request.getParameter("last_name"));
// 为两个 Cookies 设置过期日期为 24 小时后
firstName.setMaxAge(60*60*24);
lastName.setMaxAge(60*60*24);
// 在响应头中添加两个 Cookies
response.addCookie( firstName );
response.addCookie( lastName );
// 设置响应内容类型
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
String title = "设置 Cookies 实例";
String docType =
"<!doctype html public \"-//w3c//dtd html 4.0 " +
"transitional//en\">\n";
out.println(docType +
"<html>\n" +
"<head><title>" + title + "</title></head>\n" +
"<body bgcolor=\"#f0f0f0\">\n" +
"<h1 align=\"center\">" + title + "</h1>\n" +
"<ul>\n" +
" <li><b>名字</b>:"
+ request.getParameter("first_name") + "\n</li>" +
" <li><b>姓氏</b>:"
+ request.getParameter("last_name") + "\n</li>" +
"</ul>\n" +
"</body></html>");
}
}
‘柒’ java如何用cookies保存用户登录信息
然而,上网的时间一长,你会发现临时文件夹的容量越来越大,这样容易导致磁盘粹片的产生,影响系统的正常运行。因此,我们可以考虑把临时文件的路径进行移位操作,这样一来可减轻系统的负担,二来可在系统重装后快速恢复临时文件。
方法是在打开IE,依次点击“工具”-“Internet选项”- “Internet临时文件”-“设置”,选择“移动文件夹”的命令按钮并设定C盘以为的路径,然后再依据自己硬盘空间的大小来设定临时文件夹的容量大小。
历史记录:为了便于帮助用户记忆其曾访问过的网站,IE提供了把用户上网所登陆的网址全部记忆下来的功能。虽然这个记忆的功能能帮助少许人记忆网址,但笔者却认为这是微软对用户隐私权侵害的又一铁证。
试想一下,当别人翻看你的历史记录时,当你访问的网址地址一丝不挂的被他人看个明白,当……因此,笔者要清除历史记录!同样,点击“工具”-“Internet选项”,找到位于下方的“历史记录”,可根据个人喜好输入数字来设定“网页保留在历史记录中的天数” (笔者设为1,好的网站可以加入到收藏夹嘛),或直接按下“清除历史记录”的按钮并确认,从此让历史记录Never come back吧。
自动完成:在朋友们第一次使用邮箱或申请成为X网站的用户时,系统会在第一次输入完用户名和密码后跳出一个对话框。询问你是否愿意保存密码,选“是”则只用输入用户名而不必输入密码(密码输入由IE的自动完成功能提供)。但这样也有一个漏洞,即非用户一但输入对了用户名的首字母IE的自动完成就会让其无需输入密码而拥于进入权限。
IE的自动完成功能设置如下:在IE工作状态下依次点击菜单栏上的“工具”-“Internet 选项”-“内容”。
在个人信息出单击“自动完成”按钮。在这可设置自动完成的功能范围:“web地址”,“表单”,“表单上的用户名和密码”。还可通过“清除密码”和“清除表单”来去掉自动完成保留下了的密码和相关权限。这这建议在网吧上网的朋友们一定要清除相关记录哦。
脚本设置:java、JavaApplet、ActiveX等程序和控件在为朋友们浏览网站时提供精彩特效的同时,一些不怀好意的网络破坏者们为了达到其罪恶中的目的,常采用在网页源文件中加入恶意的Java脚本语言或嵌入恶意控件的方法;这样,就给朋友们的上网造成了信息被非法窃取和上网的安全隐患。如何避免这些问题呢,在安装正版防火墙的同时,我们还应该对Java、javascript等脚本、ActiveX的控件和插件进行限制,以确保安全。
点击IE菜单栏中的“工具”-“Internet选项”-“安全”-“Internet”-“自定义级别”,然后进行相关的设置。在这里可以对 “ActiveX控件和插件”、“Java”、“脚本”、“下载”、“用户验证”等安全选项进行选择性设置:如“启用”,“禁用”或“提示”。
对相关选项不熟悉的朋友们可在“重置”的下来框中选择安全级别,然后点击“确定”让修改生效。
可是,一旦 cookes为骇客运用,则电脑中的私人信息和数据安全就可能被“盗窃”。因此,我们同样要限制cookies的权限。进入IE的“Internet选项”;在“隐私”标签中找到设置,然后通过滑杆来设置cookies的隐私设置,从高到低划分为:“阻止所有Cookie”、“高”、“中高”、“中”、 “低”、“接受所有Cookie”六个级别(默认级别为“中”)。
信息限制:网络上的信息无奇不有,这从另一个侧面也促使我们使用IE来屏蔽掉有些与年龄和性别都不大符合的Y级站点。
笔者曾斗胆闯荡过上述站点,发现其除了自身具有的精神垃圾特色外,很多采用了先进的html代码和Java脚本,让你上过一次就脱不了手,恶意修改IE就是最简单的证明。
‘捌’ 怎么在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
作用都是一样的!
Java
cookie
是用来保存你信息的
比如你的用户名和密码?当你下次登录的时候就不用输入用户名和密码就可以直接登录了!
在用
cookie
的时候应该设置
cookie
的生命周期!也就是
cookie
自动小时的时间!当过了这个时间
cookie
会话就自动消失了!登录的时候就要重新输入用户名和密码!浏览器那个跟这个差不多!也是用来保存用户信息的!所以建议你在退出网站的时候:
比如
:淘宝网
在你退出的时候最好清空浏览器的
cookie
!以免被别人盗去!解释的不够好
!谢谢采纳
‘拾’ Java中的Cookie的意思、用途!
cookie首先并不是java的概念,是web编程里一种客户端存储数据的方式(通常是加密过的)。
有些数据,不是特别重要,但用户又经常要用到的,比如:网站用户的登录信息、历史查看记录等等,这些数据保存在服务器上会让服务器承担很大的压力,因此变产生了cookie这样一种客户端数据存储的方式。意思就是说把你个人的一些数据保存在本地,这样服务器减少了压力,并且下次你访问网站的时候,服务器会主动去你的机器上读取这些数据并展现出来。
比较常见的例子,有些网站登录的时候会有一个“记住登录状态”的选择,选了以后用户以后再来这个网站会发现不用再登录了,比如网络知道、猫扑等等;再比如最近优酷、腾讯视频上的的历史观看记录,不用登录,就可以记录你的机器上次看了哪些视频,看到多少分多少秒了,下次来直接点就能接着看,特别实用~~~~ PS.我最近一直在用,哈哈
cookie虽然有诸多好处,但使用的过程中还是需要注意风险,因为客户端的不确定性,对安全和隐私要求较高的数据建议还是不要放在cookie里存储,比如网络游戏账号密码信息、电子银行账户信息等等。
最后再说一个实例,当你清除浏览器缓存的时候,一般会有选择是否清除cookie,或者360安全卫士帮助你清除上网痕迹的时候,都会把本地cookie清除掉,这时候你会发现,你很长时间都不用登录的网站,比如网络知道、猫扑(原谅我经常上的网站就这俩,没别的例子可举- -!......),现在都需要重新登录了,原因就是cookie被清除掉了
一字一句全是手打,望楼主采纳~~