提交 edf08b14 编写于 作者: 如梦技术's avatar 如梦技术 🐛

添加 mica-jetcache 完善。

上级 76945f28
# mica-jetcache
## 功能扩展
- 扩展 metrics 打通 micrometer
- jackson KeyConvertorParser
- jackson KeyConvertorParser、encoder、decoder
- 添加 spring-configuration-metadata.json
- 扩展 metrics 打通 micrometer(暂时未实现)
## 使用
### maven
......@@ -27,14 +27,14 @@ jetcache:
areaInCacheName: false
local:
default:
type: caffeine
type: caffeine # 还支持:linkedhashmap
keyConvertor: bean:jacksonKeyConvertor
remote:
default:
type: redis.springdata
keyConvertor: bean:jacksonKeyConvertor
valueEncoder: bean:jacksonValueEncoder
valueDecoder: bean:jacksonValueDecoder
valueEncoder: bean:jacksonValueEncoder # 支持:kryo、java
valueDecoder: bean:jacksonValueDecoder # 支持:kryo、java
poolConfig:
minIdle: 5
maxIdle: 20
......
......@@ -16,7 +16,8 @@
package net.dreamlu.mica.jetcache.config;
import com.alicp.jetcache.anno.support.SpringConfigProvider;
import com.alicp.jetcache.anno.support.*;
import com.alicp.jetcache.autoconfigure.JetCacheAutoConfiguration;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import com.fasterxml.jackson.databind.ObjectMapper;
import net.dreamlu.mica.core.utils.JsonUtil;
......@@ -24,6 +25,7 @@ import net.dreamlu.mica.jetcache.jackson.JacksonKeyConvertor;
import net.dreamlu.mica.jetcache.jackson.JacksonValueDecoder;
import net.dreamlu.mica.jetcache.jackson.JacksonValueEncoder;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.boot.autoconfigure.AutoConfigureBefore;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
......@@ -34,6 +36,7 @@ import org.springframework.context.annotation.Configuration;
* @author L.cm
*/
@Configuration(proxyBeanMethods = false)
@AutoConfigureBefore(JetCacheAutoConfiguration.class)
public class JetCacheConfiguration implements InitializingBean {
private ObjectMapper cacheMapper;
......@@ -52,10 +55,21 @@ public class JetCacheConfiguration implements InitializingBean {
return new JacksonValueEncoder(cacheMapper);
}
@Bean
public ConfigMap configMap() {
return new ConfigMap();
}
@Bean
public SpringConfigProvider springConfigProvider(ApplicationContext applicationContext) {
DefaultSpringKeyConvertorParser convertorParser = new DefaultSpringKeyConvertorParser();
convertorParser.setApplicationContext(applicationContext);
SpringConfigProvider springConfigProvider = new SpringConfigProvider();
springConfigProvider.setKeyConvertorParser(convertorParser);
springConfigProvider.setApplicationContext(applicationContext);
DefaultSpringEncoderParser encoderParser = new DefaultSpringEncoderParser();
encoderParser.setApplicationContext(applicationContext);
springConfigProvider.setEncoderParser(encoderParser);
return springConfigProvider;
}
......
......@@ -35,6 +35,7 @@ import java.util.function.Consumer;
*
* @author L.cm
*/
@SuppressWarnings("unchecked")
public class JetCacheMonitorManager implements CacheMonitorManager, InitializingBean, DisposableBean {
private final DefaultMetricsManager defaultMetricsManager;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册