记一次iphone 微信内置浏览器跨域无法获取cookie问题的解决方法

前两天刚完成了一个账号打通的需求,两个站点不是一个域名(暂且用A.com和B.com代替两个站点域名),因此采用了jsonp跨域请求的方式来获取不同域名下的cookie值。jsonp跨域请求在这里就不赘述了,百度一搜一大把。 项目上线两天,被公司一同事发现一个Bug,就是苹果手机的微信账号登出后,再登录微信。在A站点进行登录后,会反复跳转登录页面。通过本地的fiddler进行抓取跳转路径后发现,A站点登录后,通过jsonp请求去B站点下cookie中获取用户的登录状态是未登录。但是我们在B...
阅读全文

Java开发时间处理工具类(全)

package com.bj58.zhaopin.zhaocaimao.utils.v4; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import java.util.reg...
阅读全文

Java BlockingQueue的使用

在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题。通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利。本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景。阅读全文>>
阅读全文

高并发环境下下线程安全的单例模式

在所有的设计模式中,单例模式是我们在项目开发中最为常见的设计模式之一,而单例模式有很多种实现方式。但是高并发下如何保证单例模式的线程安全性呢?这个问题在下文会进行解释。什么是单例模式? 在解释如何在高并发环境下如何保证单例模式的线程安全之前,先简单解释一下单例的概念。单例模式是为确保一个类只有一个实例,并为整个系统提供一个全局访问点的一种模式方法。单例的特点:1) 在任何情况下,单例类永远只有一个实例存在;2) 单例需要有能力为整个系统提供这一唯一实例;鉴于单例的特点,单例对象通常作为程序中的...
阅读全文

Java设计模式之Builder建造者模式学习

最近做了几个与消息推送相关的项目,主要是在某些时刻和场景下达到触发条件后,向用户或者是向系统推送不同消息内容。 鉴于不同场景下触发推送的内容和格式不同,而且为了避免每一个场景就建一个信息实体造成代码冗余。开发时就想建一个信息实体且尽可能的包含不同场景所需要的字段,这样实体不冗余了,但是实体里面的属性就会很多,而且因为不是每一个字段在具体场景中都会被用到。我们就需要针对不同的场景,创建很多参数个数或类型不一致的构造函数来应对不同的场景推送需求。 闲话不多说,样例代码贴上:public class ...
阅读全文

Java关键字——Instanceof的用法

    Java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。 用法:      result = object instanceof class  参数:  &am...
阅读全文

Shell常用命令汇总

1.  解压war包 jar -xvf  war包名称 2.打包tar.gz  tar -cvf  要打包的新名称.tar.gz   要打包的名称 3.解压tar.gz包 tar -xvf  xxx.tar.gz 4.压缩和解压缩zip包 zip -r xx.zip xx //压缩xx目录 unzip xx.zip ...
阅读全文

本地缓存之Guava使用

使用构建者模式创建对象: 首先,我们调用了expireAfterWrite方法,它可以自动的使缓存条目在指定的时间后失效,在本例中,是5分钟。 第二步,我们通过maximumSize方法,5000作为传入值,指定了缓存的最大大小,当缓存的大小逼近到最大值时,缓存中一些最近很少使用到的条目将会被移除,不一定在缓存大小达到最大值甚至超过最大值才移除。 我们注册了一个RemovalListener监...
阅读全文