/**
     * 把用户保存到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. 『重构--改善既有代码的设计』读书笔记----Extract Method

    在编程中,比较忌讳的一件事情就是长函数.因为长函数代表了你这段代码不能很好的复用以及内部可能出现很多别的地方的重复代码,而且这段长函数内部的处理逻辑你也不能很好的看清楚.因此,今天重构第一个手法就是处 ...

  2. 基于jq插件开发及弹窗实例

    基于jq的插件开发是什么鬼,$.fn是什么鬼,我在实际工作中也遇到过这个问题,下面就让我们一起来看一看这些都是什么鬼. 首先我们介绍$.fn. $.fn是指jquery的命名空间,加上fn上的方法及属 ...

  3. groovy构建和解析xml文件

    原文链接:http://www.ibm.com/developerworks/cn/java/j-pg05199/ 代码示例: 构建xml文件: def static createXmlFile(){ ...

  4. IE6的bug

    借鉴http://css.doyoe.com/ 问题和经验列表,里面应有尽有.写几个常见的: 1.解决IE6及更早浏览器浮动时产生双倍边距的BUG display:inline 2.如何解决IE6下的 ...

  5. jquery获取浏览器的高度和宽度

    <script type="text/javascript"> $(document).ready(function() { alert($(window).heigh ...

  6. Using Swift with Cocoa and Objective-C(Swift 2.0版):开始--基础设置-备

    这是一个正在研发的API或技术的概要文件,苹果公司提供这些信息主要是为了帮助你通过苹果产品使用这些技术或者编程接口而做好计划,该信息有可能会在未来发生改变,本文当中提到的软件应该以最终发布的操作系统测 ...

  7. STM32f103------ADC(DMA)

    STM32F10x  ADC 技术指标: 分辨率: 12位分辨率  LSB=Vref+  / 2^(12) 转换时间: 采样一次至少14个ADC时钟周期 ,而ADC最高时钟周期为14MHz  选用采样 ...

  8. centos7 install mysql

    1. 下载mysql的repo源 $ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm 2. 安装mysql-co ...

  9. Ubuntu 启用root账户

    设置分配很简单,只要为root设置一个root密码就行了: $ sudo passwd root 之后会提示要输入root用户的密码,连续输入root密码,再使用:$ su 就可以切换成超级管理员用户 ...

  10. H.264 Quantization

    H.264 Quantizer 一般的量化器,可用下面的公式来表示: $Z=\pm \left \lfloor\frac{ \left | W \right | }{\bigtriangleup }\ ...