博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java web项目中redis集群或单击版配置详解
阅读量:6904 次
发布时间:2019-06-27

本文共 7702 字,大约阅读时间需要 25 分钟。

单机版配置

集群版配置,其中constructor-arg name="host" value="192.168.199.203"指定ip更换即可

两个客户端代码

客户端接口

/** * Copyright (c) 2017. yagoosafe.com All right reserved. This software is the * confidential and proprietary information of yagoosafe.com ("Confidential Information"). * You shall not disclose such Confidential Information and shall use it only in accordance * with the terms of the license agreement you entered into with yagoosafe.com. */package com.yagoo.wificontrolsys.redis;/**  * 类名:JedisClient.java * 描述:jedis client * 时间:2018年3月8日 下午4:59:30  * @author yangchangjiang   * @version 1.0  */public interface JedisClient {    /**     *      * 根据key获取信息     * @param key     * @return String     */    String get(String key);    /**     *      * 设置信息     * @param key     * @param value     * @return String     */    String set(String key,String value);    /**     *      * 设置信息带过期时间     * @param key     * @param value     * @param expire     * @return String     */    String set(String key, String value, int expire);    /**     *      * hset 带多key值     * @param hkey     * @param key     * @return String     */    String hget(String hkey,String key);    /**     *      * hset 带多key值和value值     * @param hkey     * @param key     * @param value     * @return long     */    long hset(String hkey,String key,String value);    /**     *      * Incr键值+1     * @param key     * @return long     */    long incr(String key);    /**     *      * 设置过期时间     * @param key     * @param second     * @return long     */    long expire(String key,int second);    /**     *      * 查看过期时间     * @param key     * @return long     */    long ttl(String key);    /**     *      * 删除对应key值     * @param key     * @return long     */    long del(String key);    /**     *      * 删除hkey和key     * @param hkey     * @param key     * @return long     */    long hdel(String hkey,String key);}

单机版实现

/* * Copyright 2017 wenwuyi.cn All right reserved. This software is the * confidential and proprietary information of yagoosafe.com ("Confidential * Information"). You shall not disclose such Confidential Information and shall * use it only in accordance with the terms of the license agreement you entered * into with wenwuyi.cn. */package com.yagoo.wificontrolsys.redis.impl;import org.springframework.beans.factory.annotation.Autowired;import redis.clients.jedis.Jedis;import redis.clients.jedis.JedisPool;import com.yagoo.wificontrolsys.redis.JedisClient;/**  * 类的名称JedisClientSingle.java类 * 类的作用:Redis单机版 * @author YCJ  作者 E-mail: 872819838@qq.com * @date 创建时间:2017年12月24日 下午12:51:39  * @version 1.0  */public class JedisClientSingle implements JedisClient{    @Autowired    private JedisPool jedisPool;     @Override    public String get(String key) {        Jedis jedis = jedisPool.getResource();        String string = jedis.get(key);        jedis.close();        return string;    }    @Override    public String set(String key, String value) {        Jedis jedis = jedisPool.getResource();        String string = jedis.set(key, value);        jedis.close();        return string;    }    @Override    public String hget(String hkey, String key) {        Jedis jedis = jedisPool.getResource();        String string = jedis.hget(hkey, key);        jedis.close();        return string;    }    @Override    public long hset(String hkey, String key, String value) {        Jedis jedis = jedisPool.getResource();        Long result = jedis.hset(hkey, key, value);        jedis.close();        return result;    }    @Override    public long incr(String key) {        Jedis jedis = jedisPool.getResource();        Long result = jedis.incr(key);        jedis.close();        return result;    }    @Override    public long expire(String key, int second) {        Jedis jedis = jedisPool.getResource();        Long result = jedis.expire(key, second);        jedis.close();        return result;    }    @Override    public long ttl(String key) {        Jedis jedis = jedisPool.getResource();        Long result = jedis.ttl(key);        jedis.close();        return result;    }    @Override    public long del(String key) {        Jedis jedis = jedisPool.getResource();        Long result = jedis.del(key);        jedis.close();        return result;    }    @Override    public long hdel(String hkey, String key) {        Jedis jedis = jedisPool.getResource();        Long result = jedis.hdel(hkey,key);        jedis.close();        return result;    }    @Override    public String set(String key, String value, int expire) {        Jedis jedis = jedisPool.getResource();        String string = jedis.set(key, value);        jedis.expire(key, expire);        jedis.close();        return string;    }}

集群版实现

/* * Copyright 2017 wenwuyi.cn All right reserved. This software is the * confidential and proprietary information of yagoosafe.com ("Confidential * Information"). You shall not disclose such Confidential Information and shall * use it only in accordance with the terms of the license agreement you entered * into with wenwuyi.cn. */package com.yagoo.wificontrolsys.redis.impl;import org.springframework.beans.factory.annotation.Autowired;import redis.clients.jedis.JedisCluster;import com.yagoo.wificontrolsys.redis.JedisClient;/**  * 类的名称JedisClientCluster.java类 * 类的作用:redis集群版 * @author YCJ  作者 E-mail: 872819838@qq.com * @date 创建时间:2017年12月24日 下午12:54:15  * @version 1.0  */public class JedisClientCluster implements JedisClient {    @Autowired    private JedisCluster jedisCluster;    @Override    public String get(String key) {        return jedisCluster.get(key);    }    @Override    public String set(String key, String value) {        return jedisCluster.set(key, value);    }    @Override    public String hget(String hkey, String key) {        return jedisCluster.hget(hkey, key);    }    @Override    public long hset(String hkey, String key, String value) {        return jedisCluster.hset(hkey, key, value);    }    @Override    public long incr(String key) {        return jedisCluster.incr(key);    }    @Override    public long expire(String key, int second) {        return jedisCluster.expire(key, second);    }    @Override    public long ttl(String key) {        return jedisCluster.ttl(key);    }    @Override    public long del(String key) {        return jedisCluster.del(key);    }    @Override    public long hdel(String hkey, String key) {        return jedisCluster.hdel(hkey,key);    }    @Override    public String set(String key, String value, int expire) {        String string = jedisCluster.set(key, value);        jedisCluster.expire(key, expire);        return string;    }}

转载于:https://blog.51cto.com/4577390/2085451

你可能感兴趣的文章
xen虚拟化实战系列(四)之xen虚拟机扩展磁盘空间一法
查看>>
【算法】二叉查找树(BST)实现字典API
查看>>
通用服务器桩-Receiver使用说明文档
查看>>
使用asp.net 2.0的CreateUserwizard控件如何向自己的数据表中添加数据
查看>>
一次WinRoute后门攻防实况
查看>>
Intel主板支持硬盘热拔插显示图标的原因
查看>>
RHEL6基础三十六之服务器维护基础命令⑥sed
查看>>
浅谈AD RID池系列(三):Server 2008 R2补丁for RID
查看>>
针对桌面云终端做专用的高性价比CPU,吉湾微电子获首轮融资
查看>>
poj2481 树状数组
查看>>
Contrinex为高温应用推出新的RFID标签
查看>>
Q3中国光网络系统支出放缓
查看>>
MapXtreme 2005 学习心得 第八节Session问题澄清-两种配置方式致开发方式不同(九)...
查看>>
Windows 10即将针对共享功能进行大量修复和改进
查看>>
数据驱动业务决策的5个步骤
查看>>
上网个人信息如何不“裸奔” 10条信息安全建议
查看>>
JIRA的常用选项
查看>>
专访Facebook HipHop作者、阿里研究员赵海平:生物与计算机交织的独特人生
查看>>
监控视频须严加规范
查看>>
实例化需求的优点
查看>>