第一范文网 - 专业文章范例文档资料分享平台

韩顺平servlet笔记2完整版

来源:用户分享 时间:2025/5/17 8:50:25 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

⑥ 一个web应用可以保存多个cookie,但保存在同一个cookie文本在客户端浏览器下 ⑦ cookie存放的时候是以明文方式存放,因此安全较低.,我们可以通过加密后保存. ? ->补讲md5加密算法 :

请大家注意,以后我们的密码都要使用加密存放,在验证密码的时候,对用户输入密码,进行md5加密,然后该到数据库去验证。 md5算法

package com.hsp;

import java.security.*;

import java.security.spec.*;

class MD5_test {

public final static String MD5(String s) {

char hexDigits[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' }; try {

byte[] strTemp = s.getBytes();

MessageDigest mdTemp = MessageDigest.getInstance(\ mdTemp.update(strTemp); byte[] md = mdTemp.digest(); int j = md.length;

char str[] = new char[j * 2]; int k = 0;

for (int i = 0; i < j; i++) { byte byte0 = md[i];

str[k++] = hexDigits[byte0 >>> 4 & 0xf]; str[k++] = hexDigits[byte0 & 0xf]; }

return new String(str); } catch (Exception e) { return null; } }

public static void main(String[] args) { // MD5_Test aa = new MD5_Test();

System.out.print(MD5_test.MD5(\韩顺平\ } }

? 保存上次登录时间

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType(\ PrintWriter out = response.getWriter(); //先获取cookie // 假设我们 保存上次登录时间的cookie \ // 这里我们要考虑一个情况: 用户第一次登录 '您是第一次登录..' Cookie []cookies=request.getCookies(); boolean b=false;//假设没有lasttime cookie if(cookies!=null){ //保证有cookie,取遍历 for(Cookie cookie: cookies){ //取出名 String name=cookie.getName(); if(\ //显示 out.println(\您上次登录时间是 \ //更新时间 //把当前日期保存cookie SimpleDateFormat simpleDateFormat=new SimpleDateFormat(\ String nowTime=simpleDateFormat.format(new java.util.Date()); Cookie mycookie=new Cookie(\ mycookie.setMaxAge(7*3600*24);//保存一周 response.addCookie(mycookie); b=true; break; } } }

if(!b){ //没有找到 out.println(\您是第一次登录..\ //把当前日期保存cookie SimpleDateFormat simpleDateFormat=new SimpleDateFormat(\HH:mm:ss\ String nowTime=simpleDateFormat.format(new java.util.Date()); Cookie cookie=new Cookie(\ cookie.setMaxAge(7*3600*24);//保存一周 response.addCookie(cookie); } }

*上机练习

? cookie自动保存用户密码

打开登录页面的时候,自动填写该用户的用户名和密码【这个要求学员课堂练习(最好单开一个项目)】

? cookie保存浏览商品 请自己作为作业考虑实现

? cookie的细节

① 一个浏览器最多放入 300cookie,一个web站点,最多 20cookie,而且一个cookie大小限

制子4k

② cookie生命周期的再说明:

1. cookie默认生命周期是会话级别

2. 通过setMaxAge() 可以设置生命周期 setMaxAge(正数) , 即多少秒后该cookie失效 setMaxAge(0) ,删除该cookie

setMaxAge(负数), 相当于该cookie生命周期是会话级别.

案例 :

//先得到该cookie

Cookie cookies[]=request.getCookies(); for(Cookie cookie: cookies){

if(cookie.getName().equals(\)){ System.out.println(\);

}

}

//删除

cookie.setMaxAge(0);

response.addCookie(cookie);//一定带上这句话,否则不能

删除

特别说明: 如果该web应用只有一个cookie ,则删除该cookie后,在浏览器的临时文件夹下没有该cookie文件,如果该web应用有多个cookie,则删除一个cookie后,文件还在,只是该cookie没有

③ cookie存放中文,怎么处理 存放:

String val=java.net.URLEncoder.encode(\顺平\,\); Cookie cookie=new Cookie(\,val);

取出:

String val=java.net.URLDecoder.decode(cookie.getValue(), \); out.println(\+val);

? session为什么有?

问题1: 如何实现在不同的页面,可以去查看信息(比如说购物车),同时还要实现不同的用户看到的信息是自己. ? session工作原理图

搜索更多关于: 韩顺平servlet笔记2完整版 的文档
韩顺平servlet笔记2完整版.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c6t6lx2r21w3gznb0fxb9_2.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top