首页 > 代码库 > java 简单使用redis
java 简单使用redis
1.配置文件
<bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig"> <property name="maxTotal" value="50" /> <property name="maxIdle" value="8" /> <property name="maxWaitMillis" value="1000" /> <property name="testOnBorrow" value="true"/> <property name="testOnReturn" value="true"/> </bean> <bean id="jedisPool" class="redis.clients.jedis.JedisPool"> <constructor-arg index="0" ref="jedisPoolConfig" /> <constructor-arg index="1" value="192.168.1.76" type="java.lang.String"/> <constructor-arg index="2" value="6379" type="int"/> </bean>
2.复杂对象,通过序列化成进进制存储到redis中
@Repository("RedisCacheImpl")public class RedisCacheImpl implements IRedisCache { private static final Logger logger = LoggerFactory.getLogger(RedisCacheImpl.class); @Autowired(required = false) protected JedisPool pool; @Override public void put(String key, Object value) { Jedis jedis = null; try { jedis = pool.getResource(); jedis.set(key.getBytes(), SerializeUtil.serialize(value)); } catch (Exception e) { logger.error("redis error:", e); } finally { if (jedis != null) { jedis.close(); } } } @SuppressWarnings({"unchecked"}) @Override public <T> T get(String key) { Jedis jedis = null; try { jedis = pool.getResource(); byte[] value =http://www.mamicode.com/ jedis.get(key.getBytes()); if (value =http://www.mamicode.com/= null) { return null; } return (T) SerializeUtil.unSerialize(value); } catch (Exception e) { logger.error("redis error:", e); return null; } finally { if (jedis != null) { jedis.close(); } } } @SuppressWarnings({"unchecked"}) @Override public boolean del(String key) { Jedis jedis = null; try { jedis = pool.getResource(); return jedis.del(key.getBytes()) > 0; } catch (Exception e) { logger.error("redis error:", e); return false; } finally { if (jedis != null) { jedis.close(); } } }}
3.序列化类
public class SerializeUtil { private static final Logger logger = LoggerFactory.getLogger(SerializeUtil.class); public static byte[] serialize(Object object) { ObjectOutputStream oos = null; ByteArrayOutputStream baos = null; try { // 序列化 baos = new ByteArrayOutputStream(); oos = new ObjectOutputStream(baos); oos.writeObject(object); byte[] bytes = baos.toByteArray(); return bytes; } catch (Exception e) { logger.error("serializer error:", e); } return null; } public static Object unSerialize(byte[] bytes) { ByteArrayInputStream bais = null; try { // 反序列化 bais = new ByteArrayInputStream(bytes); ObjectInputStream ois = new ObjectInputStream(bais); return ois.readObject(); } catch (Exception e) { logger.error("serializer error:", e); } return null; }}
java 简单使用redis
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。