午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

SpringBoot 集成Redis 過(guò)程

瀏覽:125日期:2023-03-07 14:28:59

Redis 介紹: Redis 服務(wù)

Redis (REmote Dictionary Server) 是一個(gè)由Salvatore Sanfilippo 完成的key-value存儲(chǔ)系統(tǒng),是跨平臺(tái)的非關(guān)系型數(shù)據(jù)庫(kù)。

Redis 是一個(gè)開源的使用ANSI C語(yǔ)言編寫、遵循BSD 協(xié)議的、支持網(wǎng)絡(luò)、可基于內(nèi)存、分布式、可選擇持久性的鍵值對(duì)存儲(chǔ)數(shù)據(jù)庫(kù),并提供多語(yǔ)言的API。

Redis 通常被認(rèn)為是數(shù)據(jù)結(jié)構(gòu)服務(wù)器,其值可以是字符串、哈希、列表、集合以及有序集合。

Redis 優(yōu)點(diǎn)

異???/b>,每秒可以執(zhí)行大約110000次寫(set)操作

每秒可執(zhí)行大約81000次讀(get)操作

支持豐富的數(shù)據(jù)結(jié)構(gòu)

操作具有原子性, 所有Redis 操作都是原子操作,這確保了兩個(gè)客戶端并發(fā)訪問(wèn),Redis 服務(wù)器能接收更新的值。

多使用工具,緩存,消息隊(duì)列(Redis 本地支持發(fā)布/訂閱),應(yīng)用程序中的任何短期數(shù)據(jù)。

Redis 安裝

下載地址:

https://github.com/MSOpenTech/redis/releases

Redis 支持32位和64 位,下載完成后,解壓后,文件夾下面包含許多子文件,打開cmd 窗口,將其切換到redis 目錄下,輸入命名:

D:sdkRedis-x64-5.0.9 redis-server.exe redis.windows.conf

Redis是什么

Redis是現(xiàn)在最受歡迎的NoSQL數(shù)據(jù)庫(kù)之一,Redis是一個(gè)使用ANSI C編寫的開源、包含多種數(shù)據(jù)結(jié)構(gòu)、支持網(wǎng)絡(luò)、基于內(nèi)存、可選持久性的鍵值對(duì)存儲(chǔ)數(shù)據(jù)庫(kù),其具備如下特性:

基于內(nèi)存運(yùn)行,性能高效 支持分布式,理論上可以無(wú)限擴(kuò)展 key-value存儲(chǔ)系統(tǒng) 開源的使用ANSI C語(yǔ)言編寫、遵守BSD協(xié)議、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫(kù),并提供多種語(yǔ)言的API

相比于其他數(shù)據(jù)庫(kù)類型,Redis具備的特點(diǎn)是:

C/S通訊模型 單進(jìn)程單線程模型 豐富的數(shù)據(jù)類型 操作具有原子性 持久化 高并發(fā)讀寫 支持lua腳本

如果想使用redis 啟動(dòng)更加容易的話,可以使用 將redis 安裝路徑加入到環(huán)境變量中,直接點(diǎn)擊 redis-server.exe 即可啟動(dòng)redis 服務(wù)。

SpringBoot 集成Redis 過(guò)程

1. 在pom.xml 中配置相關(guān)依賴 jar

<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId></dependency>

2.在SpringBoot 中配置核心文件

在application.properties 文件下添加配置redis 信息

# 配置redisspring.redis.host:localhostspring.redis.password=spring.redis.port=6379

3. Redis 配置類及其使用

Redis 配置類

// RedisConfig redisconfig 配置@Configurationpublic class RedisConfig { /** * key redis serializer: {@link StringRedisSerializer} and * key redis serializer: {@link Jackson2JsonRedisSerializer} **/ @Bean public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {// 創(chuàng)建對(duì)象RedisTemplate<String, Object> template = new RedisTemplate<>();Jackson2JsonRedisSerializer valueRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);//設(shè)置Redis的value為json格式,并存儲(chǔ)對(duì)象信息的序列化類型ObjectMapper objectMapper = new ObjectMapper();objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);objectMapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);valueRedisSerializer.setObjectMapper(objectMapper);​// 創(chuàng)建一個(gè)keyRedisSerializerRedisSerializer keyRedisSerializer = new StringRedisSerializer();// 設(shè)置信息template.setKeySerializer(keyRedisSerializer);template.setValueSerializer(valueRedisSerializer);template.setHashKeySerializer(keyRedisSerializer);template.setHashValueSerializer(valueRedisSerializer);template.setConnectionFactory(factory);template.afterPropertiesSet();return template; }​ // redisUtils() 方法 @Bean public RedisUtils redisUtils(@Autowired RedisTemplate redisTemplate) {return new RedisUtils(redisTemplate); }}

Redis 工具類, 首先redis 的增刪改查等操作,針對(duì)多種數(shù)據(jù)類型的數(shù)據(jù)

/** * redis工具類 * * @author Jone */// RedisUtils@Slf4jpublic class RedisUtils {​ // 初始化變量 private static Logger logger = LoggerFactory.getLogger(RedisUtils.class);​​ private static RedisTemplate redisTemplate;​ public RedisUtils(RedisTemplate redisTemplate) {this.redisTemplate = redisTemplate; }​ // =============================common============================​​ /** * 判斷key是否存在 * * @param key 鍵 * @return true 存在 false不存在 */ public Boolean hasKey(String key) {try { return redisTemplate.hasKey(key);} catch (Exception e) { logger.error('判斷key是否存在異常: {}', e); return false;} }​ /** * 普通緩存獲取 * * @param key 鍵 * @return 值 */ public Object get(String key) {return key == null ? null : redisTemplate.opsForValue().get(key); }​ /** * 刪除 * @param key * @return */ public boolean del(String ... key){if(key!=null&&key.length>0){​redisTemplate.delete(key[0]);return true; }else{redisTemplate.delete(CollectionUtils.arrayToList(key));return true; }}return false; }​ // SET JIHE public Set getKeys(){ return redisTemplate.keys('*'); }​ /** * 普通緩存放入 * * @param key 鍵 * @param value 值 * @return true成功 false失敗 */ public Boolean set(String key, Object value) {try { redisTemplate.opsForValue().set(key, value); return true;} catch (Exception e) { logger.error('set異常: {}', e); return false;} }}

配置完備之后,自動(dòng)配置RedisTemplate ,需要操作redis 的類中注入redisTeplate,如下所示:

// 使用RedisTemplate @Autowiredprivate RedisTemplate<String, String> redisTemplate;​@Autowired private RedisTemplate<Object, Object> redisTemplate;

以上就是SpringBoot 集成Redis 過(guò)程的詳細(xì)內(nèi)容,更多關(guān)于Springboot Redis實(shí)戰(zhàn)的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Spring
相關(guān)文章:
主站蜘蛛池模板: 一区二区久久久 | а√天堂8资源中文在线 | 男女拍拍视频 | 一区二区美女视频 | 欧美爱爱视频 | 成人福利视频在线 | 国产成人一区二区在线观看 | 欧美做受视频 | av免费在线观 | av日韩中文字幕 | 欧美日韩大片 | 成人香蕉视频 | 久久婷婷视频 | 在线看国产精品 | 视频一区亚洲 | 成人黄色a | 亚欧视频在线 | 欧美一级久久久 | 亚洲欧美一二三区 | 亚洲国产欧洲 | 美国黄色网 | 浪漫樱花在线观看高清动漫 | 最近2019中文字幕大全第二页 | 日韩美在线 | 国产亚洲一区二区三区在线观看 | 欧美精品午夜 | 国产乱淫av麻豆国产免费 | 久久综合综合久久 | www.黄色大片| 天堂成人在线观看 | 成人av免费观看 | 91免费看黄 | 国产精品资源站 | 爱啪啪av | 亚洲精品国产欧美在线观看 | 中文字幕在线播放一区二区 | 成人av在线资源 | 欧美日韩国产在线一区 | 色婷婷久久久亚洲一区二区三区 | 亚洲综合福利 | 久久伊人综合 |