package com.example.demo.pojo;
import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.PropertyAccessor;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.boot.autoconfigure.cache.CacheManagerCustomizer;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.cache.ehcache.EhCacheCacheManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.cache.RedisCacheManager;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.StringRedisSerializer;
@Configuration
@EnableCaching
public class CacheManagerCustomizerInitializer {
@Bean
public CacheManagerCustomizer<EhCacheCacheManager> ehcacheManagerCustomizer() {
return cacheManager -> {
//自定义设置
System.out.println("ehcache cacheManager customizer.");
};
}
@Bean
public CacheManagerCustomizer<RedisCacheManager> redisManagerCustomizer() {
return cacheManager -> {
System.out.println("redis cacheManager customizer.");
};
}
// 自己定义一个 RedisTemplate,改变默认的jdk序列化方式,转为json,方便之后进行key的删除,并取消警告信息
@Bean
@SuppressWarnings("all")
public RedisTemplate redisTemplate(RedisConnectionFactory factory) {
RedisTemplate template = new RedisTemplate();
template.setConnectionFactory(factory);
// Json序列化配置
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
ObjectMapper om = new ObjectMapper();
om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
jackson2JsonRedisSerializer.setObjectMapper(om);
// String 的序列化
StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
// key采用String的序列化方式
template.setKeySerializer(stringRedisSerializer);
// hash的key也采用String的序列化方式
template.setHashKeySerializer(stringRedisSerializer);
// value序列化方式采用jackson
template.setValueSerializer(jackson2JsonRedisSerializer);
// hash的value序列化方式采用jackson
template.setHashValueSerializer(jackson2JsonRedisSerializer);
template.afterPropertiesSet();
return template;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
springboot 整合 redis 简单示例 1、添加依赖 pom.xml 2、主入口添加注解@EnableCaching 获取缓存方法添加@Cacheable 3、初始化缓存管理器 4 实现put get方法 其中一个put方法添加了过期时间 5 调用方法获取缓存。 注意需要在本地部署redis服务注意密码问题。
资源推荐
资源详情
资源评论
收起资源包目录
springboot 整合 redis 简单示例 (可设置缓存过期) (139个子文件)
CacheManagerCustomizerInitializer.class 5KB
HelloWorldController.class 3KB
RedisConfiguration.class 2KB
RedisOperatiomImp.class 2KB
OperationCache.class 2KB
DemoApplication.class 762B
DemoApplicationTests.class 531B
RedisOperiation.class 295B
.gitignore 395B
demo.iml 12KB
CacheManagerCustomizerInitializer.java 3KB
HelloWorldController.java 2KB
RedisConfiguration.java 1KB
RedisOperatiomImp.java 995B
OperationCache.java 961B
DemoApplication.java 446B
DemoApplicationTests.java 215B
RedisOperiation.java 201B
demo.kotlin_module 16B
HELP.md 431B
test_305_cyfccph.FPn0DQ.meta 19B
a9c564fd-daf0-42c5-b59d-bde4b6d642cd.xml 3.34MB
easyCodeTableSetting.xml 41KB
workspace.xml 13KB
uiDesigner.xml 9KB
pom.xml 6KB
Project_Default.xml 2KB
dataSources.local.xml 1KB
Maven__com_fasterxml_jackson_module_jackson_module_parameter_names_2_13_4.xml 778B
Maven__org_mybatis_spring_boot_mybatis_spring_boot_autoconfigure_2_1_1.xml 772B
Maven__io_netty_netty_transport_native_unix_common_4_1_84_Final.xml 768B
Maven__org_springframework_boot_spring_boot_test_autoconfigure_2_6_13.xml 762B
Maven__org_springframework_boot_spring_boot_starter_freemarker_2_6_13.xml 762B
Maven__org_springframework_boot_spring_boot_starter_data_redis_2_6_13.xml 762B
Maven__com_vaadin_external_google_android_json_0_0_20131108_vaadin1.xml 742B
Maven__org_springframework_boot_spring_boot_starter_logging_2_6_13.xml 741B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jsr310_2_13_4.xml 737B
Maven__org_springframework_spring_context_support_4_2_5_RELEASE.xml 735B
Maven__org_springframework_boot_spring_boot_starter_tomcat_2_6_13.xml 734B
Maven__org_mybatis_spring_boot_mybatis_spring_boot_starter_2_1_1.xml 730B
Maven__org_springframework_boot_spring_boot_autoconfigure_2_6_13.xml 727B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_13_4.xml 723B
Maven__org_springframework_boot_spring_boot_starter_jdbc_2_6_13.xml 720B
Maven__org_springframework_boot_spring_boot_starter_json_2_6_13.xml 720B
Maven__org_springframework_boot_spring_boot_starter_test_2_6_13.xml 720B
Maven__org_springframework_boot_spring_boot_starter_web_2_6_13.xml 713B
Maven__org_apache_tomcat_embed_tomcat_embed_websocket_9_0_68.xml 702B
compiler.xml 699B
Maven__com_fasterxml_jackson_core_jackson_annotations_2_13_4.xml 693B
Maven__org_springframework_boot_spring_boot_starter_2_6_13.xml 685B
Maven__org_springframework_data_spring_data_keyvalue_2_6_9.xml 685B
Maven__org_springframework_data_spring_data_commons_2_6_9.xml 678B
Maven__org_junit_platform_junit_platform_commons_1_8_2.xml 675B
Maven__jakarta_activation_jakarta_activation_api_1_2_2.xml 675B
Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml 675B
Maven__com_baomidou_mybatis_plus_boot_starter_3_5_1.xml 672B
Maven__com_fasterxml_jackson_core_jackson_databind_2_11_0.xml 672B
Maven__org_junit_platform_junit_platform_engine_1_8_2.xml 668B
Maven__com_alibaba_druid_spring_boot_starter_1_2_8.xml 668B
Maven__org_apache_tomcat_embed_tomcat_embed_core_9_0_68.xml 667B
Maven__org_springframework_boot_spring_boot_test_2_6_13.xml 664B
Maven__org_springframework_data_spring_data_redis_2_6_9.xml 664B
Maven__com_baomidou_mybatis_plus_annotation_3_4_0.xml 658B
Maven__org_junit_jupiter_junit_jupiter_params_5_8_2.xml 657B
Maven__org_junit_jupiter_junit_jupiter_engine_5_8_2.xml 657B
Maven__org_apache_tomcat_embed_tomcat_embed_el_9_0_68.xml 653B
Maven__jakarta_xml_bind_jakarta_xml_bind_api_2_3_3.xml 653B
Maven__javax_annotation_javax_annotation_api_1_3_2.xml 653B
Maven__org_apache_velocity_velocity_engine_core_2_3.xml 651B
Maven__com_baomidou_mybatis_plus_generator_3_5_2.xml 651B
Maven__org_springframework_spring_expression_5_3_23.xml 651B
Maven__com_baomidou_mybatis_plus_extension_3_4_0.xml 651B
Maven__org_apache_logging_log4j_log4j_to_slf4j_2_17_2.xml 650B
Maven__com_fasterxml_jackson_core_jackson_core_2_13_4.xml 644B
Maven__org_mockito_mockito_junit_jupiter_4_0_0.xml 640B
Maven__org_reactivestreams_reactive_streams_1_0_4.xml 637B
Maven__io_lettuce_lettuce_core_6_1_10_RELEASE.xml 636B
Maven__org_junit_jupiter_junit_jupiter_api_5_8_2.xml 636B
Maven__io_netty_netty_transport_4_1_84_Final.xml 635B
Maven__org_springframework_spring_context_5_3_23.xml 630B
Maven__org_springframework_boot_spring_boot_2_6_13.xml 629B
Maven__io_netty_netty_resolver_4_1_84_Final.xml 628B
Maven__net_bytebuddy_byte_buddy_agent_1_11_22.xml 627B
Maven__org_springframework_spring_webmvc_5_3_23.xml 623B
Maven__io_swagger_swagger_annotations_1_6_3.xml 622B
Maven__io_netty_netty_handler_4_1_84_Final.xml 621B
Maven__org_apache_commons_commons_lang3_3_12_0.xml 619B
Maven__org_apache_commons_commons_pool2_2_11_1.xml 619B
Maven__ch_qos_logback_logback_classic_1_2_11.xml 617B
Maven__org_springframework_spring_beans_5_3_23.xml 616B
Maven__com_baomidou_mybatis_plus_core_3_4_0.xml 616B
Maven__org_apache_logging_log4j_log4j_api_2_17_2.xml 615B
Maven__io_netty_netty_common_4_1_84_Final.xml 614B
Maven__io_netty_netty_buffer_4_1_84_Final.xml 614B
Maven__org_apiguardian_apiguardian_api_1_1_2.xml 614B
Maven__com_mysql_mysql_connector_j_8_0_31.xml 611B
Maven__org_springframework_spring_test_5_3_23.xml 609B
Maven__org_springframework_spring_core_5_3_23.xml 609B
Maven__org_springframework_spring_jdbc_5_3_23.xml 609B
Maven__org_junit_jupiter_junit_jupiter_5_8_2.xml 608B
共 139 条
- 1
- 2
资源评论
米事特简
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功