1 Star 0 Fork 0

鹏鹏 / redisUtils

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

knife4j-redis-lettuce

基于SpringBoot2.X + lettuce 实现Redis集成、多库实时切换操作

项目结构:

├──knife4j-redis-lettuce

​ ├──knife4j-redis-lettuce-demo -- SpringBoot测试模块Demo

​ ├──knife4j-redis-lettuce-stater -- lettuce多库切换核心模块

如何快速接入

  • Maven依赖集成

          <dependency>
              <groupId>com.zyll.lp.redis</groupId>
              <artifactId>redisUtils</artifactId>
              <version>1.0-SNAPSHOT</version>
          </dependency>
    
  • application.ymlproperties如下配置

    # 此处Key不可改变
    knife4j:
      redis:
        # 是否采用json序列化发方式,若不采用则为JDK序列化
        #jsonSerialType: 'Fastjson'
        host: localhost
        password: knife # 根据自己设定进行修改
        port: 6379
        databases: [0,1,2,3,4,5,6] # 要使用的库,会根据此处填写的库生成redisTemplate
        timeout: 60s
        lettuce: # lettuce基于netty,线程安全,支持并发
          pool:
            max-active: 50
            max-wait: -1ms
            max-idle: 8
            min-idle: 0

核心概览

完善中....

@Autowired private RedisValUtil redisValUtil;

/**
 * 单值操作测试
 * @param key
 * @return
 */
@GetMapping("/val/{key}")
public String test(@PathVariable("key") String key){
    redisValUtil.set(key , "默认库设置");
    redisValUtil.set(1 , key , "指定1库设置值");

    //get值
    String db1SetKey = redisValUtil.get(1, key);
    System.out.println("指定1库获取值:" + db1SetKey);

    //删除后再get
    redisValUtil.delete(1 , key);
    String db1SetKey2 = redisValUtil.get(1, key);
    System.out.println("指定1库获取已经被删除的值:" + db1SetKey2);

    return "ok";
}


@Autowired
private RedisListUtil redisListUtil;

/**
 * 集合操作测试
 * @param key
 * @return
 */
@GetMapping("/list/{key}")
public String listTest(@PathVariable("key") String key){
    Book book1 = new Book();
    book1.setId(1);
    book1.setName("深入理解JVM(第三版)");
    Book book2 = new Book();
    book2.setId(2);
    book2.setName("SpringBoot从实战到精通");
    Book [] array = new Book[]{book1 , book2};
    redisListUtil.insert(3 , key , array);

    List<Book> listAll = redisListUtil.getListAll(3, key, Book.class);
    System.out.println("redis库中取出的值:" + listAll);

    return "ok";
}


@Autowired
private RedisHashUtil redisHashUtil;
/**
 * hash操作测试
 * @param key
 * @return
 */
@GetMapping("/hash/{key}")
public String hashTest(@PathVariable("key") String key){
    Map<String,Book> map = new HashMap<>();
    Book book1 = new Book();
    book1.setId(4);
    book1.setName("深入理解JVM(第二版)");
    Book book2 = new Book();
    book2.setId(5);
    book2.setName("redis从实战到精通");
    map.put("A" , book1);
    map.put("B" , book2);
    redisHashUtil.addMapAll(5 , key , map);
    Map<String, Book> mapAll = redisHashUtil.getMapAll(5 , key, String.class, Book.class);
    System.out.println("从redis中取出Map的值:" + mapAll);

    //往第6库添加Hash
    redisHashUtil.addMapOne(6 , key , "W" , book1);
    Long w = redisHashUtil.deleteMapVal(6, key, "W");
    System.out.println("删除hash条数:" + w);
    return "ok";
}


@Autowired
private RedisSetUtil redisSetUtil;

/**
 * 集合set操作测试
 * @param key
 * @return
 */
@GetMapping("/set/{key}")
public String setTest(@PathVariable("key") String key){
    Book book1 = new Book();
    book1.setId(1);
    book1.setName("深入理解JVM(第三版)");
    Book book2 = new Book();
    book2.setId(2);
    book2.setName("SpringBoot从实战到精通");
    Book [] array = new Book[]{book1 , book2};
    redisSetUtil.add(3 , key , array);
    Set<Object> setAll = redisSetUtil.getAll(3, key);
    System.out.println("redis库中取出的值:" + setAll);
    return "ok";
}

空文件

简介

暂无描述 展开 收起
Java
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/ziyouliulan/redisUtils.git
git@gitee.com:ziyouliulan/redisUtils.git
ziyouliulan
redisUtils
redisUtils
master

搜索帮助

53164aa7 5694891 3bd8fe86 5694891