Solon

solon.cache.jedis

<dependency>
    <groupId>org.noear</groupId>
    <artifactId>solon.cache.jedis</artifactId>
</dependency>

1、描述

数据扩展插件,为 Solon Data 提供基于 jedis 的框架适配。主要实现 CacheService 接口。

2、配置示例

#完整配置示例
demo.cache1:
  driverType: "redis" #驱动类型
  keyHeader: "demo" #默认为 ${solon.app.name} ,可不配置
  defSeconds: 30 #默认为 30,可不配置
  server: "localhost:6379"
  db: 0 #默认为 0,可不配置
  password: ""
  maxTotaol: 200 #默认为 200,可不配


#简配示例
demo.cache2:
  server: "localhost:6379"

3、应用示例

//配置缓存服务
@Configuration
public class Config {
    @Bean(name = "cache1", typed = true) //typed 表示可类型注入 //即默认
    public CacheService cache1(@Inject("${demo.cache1}") RedisCacheService cache){
        return cache;
    }

    @Bean(name = "cache2")
    public CacheService cache2(@Inject("${demo.cache2}") RedisCacheService cache){
        return cache;
    }
    
    //通过 CacheServiceSupplier ,可根据 driverType 自动构建缓存服务
    @Bean(name = "cache1s")
    public CacheService cache2(@Inject("${demo.cache1}") CacheServiceSupplier supplier){
        return supplier.get();
    }
}

//应用
@Controller
public class DemoController {
    //使用默认缓存服务。如果有缓存,直接返回缓存;如果没有,执行函数,缓存结果,并返回
    @Cache
    public String hello(String name) {
        return String.format("Hello {0}!", name);
    }
}