当前位置: 首页 > news >正文

沈阳设计网站莆田网站制作方案定制

沈阳设计网站,莆田网站制作方案定制,大气好看的网站,深圳网约车目录 缓存支持 缓存集成 redis缓存集成 缓存支持 Spring 框架只提供抽象#xff0c;不提供具体的缓存存储#xff0c;底层需要依赖第三方存储组件#xff0c;如果当前应用没有注册CacheManager 或者 CacheResolver 实例#xff0c;Spring Boot 会按以下缓存组件的顺序来…目录 缓存支持 缓存集成 redis缓存集成 缓存支持 Spring 框架只提供抽象不提供具体的缓存存储底层需要依赖第三方存储组件如果当前应用没有注册CacheManager 或者 CacheResolver 实例Spring Boot 会按以下缓存组件的顺序来检测: GenericJCache (SR-107)(EhCache 3, Hazelcast, Infinispan 等等)HazelcastlnfinispanCouchbaseredis ........ Spring Boot的自动配置类为CacheAutoConfiguration在 CacheAutoConfiguration 缓存自动配置类中引入了 CacheConfigurationImportSelector 配置选择器 AutoConfiguration(after { CouchbaseDataAutoConfiguration.class, HazelcastAutoConfiguration.class,HibernateJpaAutoConfiguration.class, RedisAutoConfiguration.class }) ConditionalOnClass(CacheManager.class) ConditionalOnBean(CacheAspectSupport.class) ConditionalOnMissingBean(value CacheManager.class, name cacheResolver) EnableConfigurationProperties(CacheProperties.class) Import({ CacheConfigurationImportSelector.class, CacheManagerEntityManagerFactoryDependsOnPostProcessor.class }) public class CacheAutoConfiguration {...static class CacheConfigurationImportSelector implements ImportSelector {Overridepublic String[] selectImports(AnnotationMetadata importingClassMetadata) {CacheType[] types CacheType.values();String[] imports new String[types.length];for (int i 0; i types.length; i) {imports[i] CacheConfigurations.getConfigurationClass(types[i]);}return imports;}} 该选择器通过 CacheConfiqurations 缓存配置类来选择对应缓存组件的配置类 final class CacheConfigurations {private static final MapCacheType, String MAPPINGS;static {MapCacheType, String mappings new EnumMap(CacheType.class);mappings.put(CacheType.GENERIC, GenericCacheConfiguration.class.getName());mappings.put(CacheType.HAZELCAST, HazelcastCacheConfiguration.class.getName());mappings.put(CacheType.INFINISPAN, InfinispanCacheConfiguration.class.getName());mappings.put(CacheType.JCACHE, JCacheCacheConfiguration.class.getName());mappings.put(CacheType.COUCHBASE, CouchbaseCacheConfiguration.class.getName());mappings.put(CacheType.REDIS, RedisCacheConfiguration.class.getName());mappings.put(CacheType.CAFFEINE, CaffeineCacheConfiguration.class.getName());mappings.put(CacheType.CACHE2K, Cache2kCacheConfiguration.class.getName());mappings.put(CacheType.SIMPLE, SimpleCacheConfiguration.class.getName());mappings.put(CacheType.NONE, NoOpCacheConfiguration.class.getName());MAPPINGS Collections.unmodifiableMap(mappings);}...代码...} 缓存集成 依赖配置 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-cache/artifactId /dependency 加入依赖后通过使用EnableCaching注解来启用缓存功能。通过参数type指定要使用的缓存组件以redis为示例 spring:cache: type: redis 禁用缓存 spring:cache: type: none 缓存类型type的值 GENERIC: 通用缓存类型HAZELCAST: Hazelcast 缓存类型INFINISPAN: Infinispan 缓存类型JCACHE: JCache 缓存类型COUCHBASE: Couchbase 缓存类型REDIS: Redis 缓存类型CAFFEINE: Caffeine 缓存类型CACHE2K: Cache2k 缓存类型SIMPLE: 简单缓存类型NONE: 无缓存类型 redis缓存集成 在Spring Boot 2.7中使用EnableCaching注解启用缓存功能时如果你想使用Redis作为缓存存储你需要在配置文件中指定Redis的相关配置。 application.properties或application.yml文件中添加以下配置 spring:cache:type: redis # 指定缓存使用redisredis:host: 127.0.0.1 # Redis服务器地址database: 1 # Redis数据库索引默认为0port: 6379 # Redis服务器连接端口password: # Redis服务器连接密码默认为空 依赖配置 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-redis/artifactId /dependency 配置缓存管理器 Configuration EnableCaching public class RedisTemplateConfiguration {/*** 默认过期时长单位秒*/Getterprivate long expire 60 * 60 * 24; ​Beanpublic RedisTemplateString, Object redisTemplate(RedisConnectionFactory factory) {RedisTemplateString, Object redisTemplate new RedisTemplate();redisTemplate.setKeySerializer(RedisSerializer.string());redisTemplate.setHashKeySerializer(RedisSerializer.string());redisTemplate.setValueSerializer(RedisSerializer.java());redisTemplate.setHashValueSerializer(RedisSerializer.java());redisTemplate.setConnectionFactory(factory);return redisTemplate;} ​Beanpublic HashOperationsString, String, Object hashOperations(RedisTemplateString, Object redisTemplate) {return redisTemplate.opsForHash();} ​Beanpublic ValueOperationsString, String valueOperations(RedisTemplateString, String redisTemplate) {return redisTemplate.opsForValue();} ​Beanpublic ListOperationsString, Object listOperations(RedisTemplateString, Object redisTemplate) {return redisTemplate.opsForList();} ​Beanpublic SetOperationsString, Object setOperations(RedisTemplateString, Object redisTemplate) {return redisTemplate.opsForSet();} ​Beanpublic ZSetOperationsString, Object zSetOperations(RedisTemplateString, Object redisTemplate) {return redisTemplate.opsForZSet();} }
http://www.zqtcl.cn/news/445144/

相关文章:

  • 全能企业网站管理系统做教案比较好的网站
  • 昆明做网站竞价单页营销型网站建设
  • 网站注销备案查询厦门好的做网站公司
  • 大学生兼职网站做ppt数字化营销模式及特点
  • 网站虚拟主机1gwordpress自定义头像插件
  • 网站建设的栏目策划长沙网站制作价
  • h5商城网站怎么建立建设银行网站号
  • 养殖舍建设网站网站设计建设流程图
  • 麦包包的网站建设分析陕西城乡建设部网站
  • 网站测评必须做灯笼制作手工简单又漂亮
  • 购物网站建设的意义与目的wordpress 插件 加速
  • 大型html5浅蓝色网站设计公司dede模板网店怎么开店详细教程
  • 一个阿里云怎么做两个网站吗樱花16q808a
  • 如何利用服务器做网站网站建设朝阳
  • 比邻店网站开发企查查企业信息查询在线
  • 家乡网站建设策划案专业建设专题网站
  • 网站建设公司挣钱吗wordpress评论内容密码保护
  • 上海专业建站最低价网站程序模板
  • 蚌埠网站建设哪家好创客贴官网
  • php网站建设参考文献wordpress 头像 很慢
  • 大连seo网站推广phpcmsv9手机网站源码
  • 公司做推广做网站好还是俄文网站引擎
  • 上海市建设咨询协会网站asp网站源码
  • 大家都在哪些网站上做医药招商wordpress po文件
  • 国外主题网站兰州app
  • 建设项目自主验收公示网站dedecms英文外贸网站企业模板下载
  • 做网站要服务器吗前端企业网站开发
  • 用html写一个个人介绍多网站怎么做seo
  • 做网站打广告犯法吗中国建设投资集团 网站首页
  • 怎么免费申请个人网站职业技能培训有哪些