/**
     * 把用户保存到Cookie
     *
     * @param request
     * @param response
     * @param member
     */
    private void rememberPwdAndUserName(HttpServletRequest request,
            HttpServletResponse response, Member member) {
        Long memberid = member.getMemberId();
        String uuidMDKey = parseKey(memberid);
        // 先验证 此key是否有重复
        boolean isexists = true;
        do {
            Long memberId = (Long) cache.get(uuidMDKey);
            if (null != memberId) {
                uuidMDKey = parseKey(memberid);
            } else {
                isexists = false;
            }
        } while (isexists);

        //add by zp 串session 添加日志
        String SESSIONIDKEY = UrlPrefix.getUrl("cookie.sessionidkey");
        String UUIDMDKEY = UrlPrefix.getUrl("cookie.uuidmdkey");
        String _GA = UrlPrefix.getUrl("cookie.ga");
        Cookie cookies[] = request.getCookies();
        String sessionId = "";
        String uuidMdKey1 = "";
        String _ga = "";
        if (cookies != null && cookies.length > 0) {
            Cookie sCookie = null;
            for (int i = 0; i < cookies.length; i++) {
                sCookie = cookies[i];
                if (sCookie.getName().equals(SESSIONIDKEY)) {
                    sessionId = sCookie.getValue();
                }else if(sCookie.getName().equals(UUIDMDKEY)){
                    uuidMdKey1 = sCookie.getValue();
                }else if(sCookie.getName().equals(_GA)){
                    _ga = sCookie.getValue();
                }
            }
        }
        EcCookie cookie =new EcCookie();
        cookie.setUuidmdKey(uuidMDKey);
        cookie.setSessionId(sessionId);
        cookie.setGaValue(_ga);
        cookie.setCreateTime(DateUtils.getCurrentDateString());
        cookie.setUuidmdKeyOld(uuidMdKey1);
        ecCookieService.saveEcCookie(cookie);
        //add by zp 串session 添加日志

        // 添加memcache 缓存
        cache.put(uuidMDKey, member.getMemberId(), CACHE_SECOND_SESSION);
        Cookie newCookie = new Cookie("uuidMdKey", uuidMDKey);
        newCookie.setMaxAge(MONTH_SECOND);
        newCookie.setPath(request.getContextPath() + "/");
        response.addCookie(newCookie);
    }

将用户信息保存到Cookie中的更多相关文章

  1. 微信开放接口获取用户昵称保存到MySQL中为空白

    微信昵称中包含emoji表情标签,某些标签是使用了4字节编码的UTF8. 而大多数MySQL数据库现在使用的是3字节UTF8编码,这样会导致保存为空,且不会提示失败. 解决方法有2个,一个是升级到My ...

  2. 监听页面中的某个div的滚动事件,并将其滚动距离保存到cookie

    在html中,写一个id为type的div: <div class="type" id="type"></div> css: .type ...

  3. jsonp跨域实现单点登录,跨域传递用户信息以及保存cookie注意事项

    网站A:代码:网站a的login.html页面刷新,使用jsonp方式将信息传递给b.com的login.php中去,只需要在b.com中设置一下跨域以及接收参数,然后存到cookei即可, 注意:网 ...

  4. 个人学习记录1:二维数组保存到cookie后再读取

    二维数组保存到cookie后再读取 var heartsArray = [[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0],[0,0, ...

  5. Flask实战第43天:把图片验证码和短信验证码保存到memcached中

    前面我们已经获取到图片验证码和短信验证码,但是我们还没有把它们保存起来.同样的,我们和之前的邮箱验证码一样,保存到memcached中 编辑commom.vews.py .. from utils i ...

  6. 1.scrapy爬取的数据保存到es中

    先建立es的mapping,也就是建立在es中建立一个空的Index,代码如下:执行后就会在es建lagou 这个index.     from datetime import datetime fr ...

  7. Redis使用场景一,查询出的数据保存到Redis中,下次查询的时候直接从Redis中拿到数据。不用和数据库进行交互。

    maven使用: <!--redis jar包--> <dependency> <groupId>redis.clients</groupId> < ...

  8. jQuery切换网页皮肤保存到Cookie实例

    效果体验:http://keleyi.com/keleyi/phtml/jqtexiao/25.htm 以下是源代码: <!DOCTYPE html PUBLIC "-//W3C//D ...

  9. ffmpeg从AVFrame取出yuv数据到保存到char*中

    ffmpeg从AVFrame取出yuv数据到保存到char*中   很多人一直不知道怎么利用ffmpeg从AVFrame取出yuv数据到保存到char*中,下面代码将yuv420p和yuv422p的数 ...

随机推荐

  1. sql批量插入数据之存储过程

    -- ============================================= -- Author: jf_ou -- Create date: 2016/03/22 -- Desc ...

  2. 关于委托:异常{ 无法将 匿名方法 转换为类型“System.Delegate”,因为它不是委托类型 }

    转自:http://www.cnblogs.com/xiaofei59/archive/2010/11/25/1887285.html 异常{ 无法将 匿名方法 转换为类型“System.Delega ...

  3. c# sqlserver备份还原(转)

    WinForm c# 备份 还原 数据库 其实是个非常简单的问题,一个Form,一个Button,一个OpenFileDialog,一个SaveFileDialog.下面给出备份与还原类 using ...

  4. Extjs中grid表格中去掉红三角

    在编辑Extjs的gridpanel的时候,数据有错误或是修改在每个单元格上都会出现红色的小三角,在每个列上面可以配置allowBlank: false来标识这个不可以为空 有的时候在保存数据时如果不 ...

  5. Day2 数据类型

    1.数字:int(整型) 32位机器:-2**31~2**31-1 64位机器:-2**63~2**63-1 float(浮点型) 2.布尔值 真或假 1或0 bool(0) 3.字符串 name = ...

  6. xcode5 自定义模板

    经过一番周折,终于在xcode5上实现了一个简单的自定义模板,在项目中集成NSLogger库(增强NSLog的功能,https://github.com/fpillet/NSLogger)——新建项目 ...

  7. 转:ElasticSearch 简单入门

    原文来自于:http://www.oschina.net/translate/elasticsearch-getting-started?cmp 教程样例 我们将要部署一个非常简单的应用--在一个部门 ...

  8. 转:PHP - .htaccess设置显示PHP错误

    使用.htaccess可以在某种程度上更改PHP的错误显示的设置,实际上,相当于更改PHP.ini的参数,很是方便. 将以下相应代码放到对应目录中的.htaccess文件,即可实现相应功能. 关闭错误 ...

  9. linux kernel

    first step. http://www.cyberciti.biz/faq/howto-install-kernel-headers-package/ http://uliweb.clkg.or ...

  10. Rectangle 响应按键

    import QtQuick 2.4 import QtQuick.Window 2.2 Window { visible: true MainForm { anchors.fill: parent ...