Jedis jedis = JedisConnectUtil.getJedisDB(Constants.JedisDBMY);//创建redis连接对象
String [] authNum = auth.split(",");//解析位字符串
//逐位存储
// for(int a = 0;a<authNum.length;a++){
// jedis.setbit("mgrAuth:"+appId+":"+userName, Long.valueOf(authNum[a]), true);
// }
//编辑后一次存储全部(默认64位,可以继续set自动扩充)
BitSet bits=new BitSet();
for(int a = 0;a<authNum.length;a++){
bits.set(Integer.valueOf(authNum[a]));
}
jedis.set(("key").getBytes(),bits.toByteArray());
}
验证指定位:Boolean flag = jedis.getbit("key:".getBits(),Long.valueOf(authNum));
status = 0;
msg = "验证成功";
true /false
验证整个位的大小:
BitSet bits=BitSet.valueOf(jedis.get(("key").getBytes()));//操作权限
BitSet bits1=BitSet.valueOf(jedis.get(("key1").getBytes()));//权限1
//验证权限1的合法性(即权限1小于操作权限)
bits1.or(bits);//(或之后结果等于前者)
if(bits1.equals(bits)){
system.out.println("验证成功")
}