欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

SpringBoot中怎么配置單點Redis緩存

今天就跟大家聊聊有關SpringBoot中怎么配置單點redis緩存,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

創(chuàng)新互聯(lián)是一家朝氣蓬勃的網(wǎng)站建設公司。公司專注于為企業(yè)提供信息化建設解決方案。從事網(wǎng)站開發(fā),網(wǎng)站制作,網(wǎng)站設計,網(wǎng)站模板,微信公眾號開發(fā),軟件開發(fā),小程序制作,十多年建站對成都廣告設計等多個領域,擁有豐富的網(wǎng)站建設經(jīng)驗。

import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.PropertyAccessor;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.cache.CacheManager;
import org.springframework.cache.annotation.CachingConfigurerSupport;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.cache.interceptor.KeyGenerator;
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.core.StringRedisTemplate;
import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;

import java.lang.reflect.Method;

/**
 * redis 緩存配置;
 * <p>
 * 注意:RedisCacheConfig這里也可以不用繼承:CachingConfigurerSupport,也就是直接一個普通的Class就好了;
 * <p>
 * 這里主要我們之后要重新實現(xiàn) key的生成策略,只要這里修改KeyGenerator,其它位置不用修改就生效了。
 * <p>
 * 普通使用普通類的方式的話,那么在使用@Cacheable的時候還需要指定KeyGenerator的名稱;這樣編碼的時候比較麻煩。
 *
 * @create 2017-12-13 12:45
 **/
@Configuration
@EnableCaching//啟用緩存,這個注解很重要;
public class RedisCacheConfig extends CachingConfigurerSupport {


    /**
     * 緩存管理器.
     *
     * @param redisTemplate
     * @return
     */
    @Bean
    public CacheManager cacheManager(RedisTemplate<?, ?> redisTemplate) {
        RedisCacheManager cacheManager = new RedisCacheManager(redisTemplate);
        //設置緩存過期時間
        cacheManager.setDefaultExpiration(10000);
        return cacheManager;
    }


    /**
     * redis模板操作類,類似于jdbcTemplate的一個類;
     * <p>
     * 雖然CacheManager也能獲取到Cache對象,但是操作起來沒有那么靈活;
     * <p>
     * 這里在擴展下:RedisTemplate這個類不見得很好操作,我們可以在進行擴展一個我們
     * <p>
     * 自己的緩存類,比如:RedisStorage類;
     *
     * @param factory : 通過Spring進行注入,參數(shù)在application.properties進行配置;
     * @return
     */
    @Bean
    public RedisTemplate redisTemplate(RedisConnectionFactory factory) {
        StringRedisTemplate template = new StringRedisTemplate(factory);
        setSerializer(template);//設置序列化工具
        template.afterPropertiesSet();
        return template;
    }

    private void setSerializer(StringRedisTemplate template) {
        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);
        template.setValueSerializer(jackson2JsonRedisSerializer);
    }

    /**
     * 自定義key.
     * 此方法將會根據(jù)類名+方法名+所有參數(shù)的值生成唯一的一個key,即使@Cacheable中的value屬性一樣,key也會不一樣。
     */
    @Override
    public KeyGenerator keyGenerator() {
        return new KeyGenerator() {
            @Override
            public Object generate(Object o, Method method, Object... objects) {
                StringBuilder sb = new StringBuilder();
                sb.append(o.getClass().getName());
                sb.append(method.getName());
                for (Object obj : objects) {
                    sb.append(obj.toString());
                }
                return sb.toString();
            }
        };
    }

}
########################################################
###REDIS (RedisProperties) redis基本配置;
########################################################
# database name
spring.redis.database=0
# server host1
spring.redis.host=127.0.0.1
# server password
#spring.redis.password=
#connection port
spring.redis.port=6379
# pool settings ...
spring.redis.pool.max-idle=8
spring.redis.pool.min-idle=0
spring.redis.pool.max-active=8
spring.redis.pool.max-wait=-1
# name of Redis server
#spring.redis.sentinel.master=
# comma-separated list of host:port pairs
#spring.redis.sentinel.nodes=

看完上述內(nèi)容,你們對SpringBoot中怎么配置單點Redis緩存有進一步的了解嗎?如果還想了解更多知識或者相關內(nèi)容,請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。

網(wǎng)站標題:SpringBoot中怎么配置單點Redis緩存
文章起源:http://www.aaarwkj.com/article20/iijico.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供建站公司、網(wǎng)站改版、全網(wǎng)營銷推廣、小程序開發(fā)網(wǎng)站維護、域名注冊

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化
日韩精品女性三级视频| 亚洲高清有码在线观看| 日韩精品专区在线影院重磅 | 激情亚洲欧美日韩精品| 在线看黄色片播放器日韩| 少妇特黄a一区二区三区| 91中文字幕国产日韩| 欧美国产日本日韩在线黄| 亚洲欧美成人免费视频| 亚洲av男人的天堂看| 四虎国产精品久久久久久网址| 国产精品偷拍自拍视频| 国产产品在线免费看91| 婷婷人妻中文字幕在线| 亚洲精品在线观看午夜福利| 亚洲国内一区二区三区| 亚洲精品一区二区三区不卡| 亚洲不卡免费在线视频| 欧美日韩亚洲一区二区搜索| 久久精品国产亚洲av波多| 欧美日韩av在线一区二区| 亚洲熟女少妇视频自拍| 91亚色在线免费观看| 日韩中文免费av一区| 97视频在线观看网站| 亚洲黄色片在线播放| 青青草手机在线视频免费观看| 在线观看中文字幕不卡二区| 人妻操人人妻中出av| 午夜福利片免费在线观看| 日韩一区二区三区av在线| 免费高清av一区二区| 四虎最新地址在线观看| 国产av剧情精品麻豆| 91九色国产原创在线观看| 免费成人激情在线电影| 粉嫩av蜜臀一区二区三区| 中文字幕色视频在线观看| 欧美高清一区二区三区不卡| 久久精品成人无码观看56| 日韩国产欧美亚州精品|