springboot redis 用法簡介
pom.xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
application.yml
#redis 配置
redis:
database: 0
host: 127.0.0.1
port: 6379
password:
pool:
max -active: 8
max-wait: -1
max-idle: 8
min-idle: 0
timeout: 0
RedisConfig.java
@Configuration
@EnableCaching
public class RedisConfig extends CachingConfigurerSupport {
@Bean
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 param : objects
) {
sb.append(param.toString());
}
return sb.toString();
}
};
}
@Bean
public CacheManager cacheManager(RedisTemplate redisTemplate) {
RedisCacheManager rcm = new RedisCacheManager(redisTemplate);
//設定快取過期時間
// rcm.setDefaultExpiration(60);//秒
//設定value的過期時間
return rcm;
}
/**
* RedisTemplate配置
*
* @param factory
* @return
*/
@Bean
public RedisTemplate<String, String> redisTemplate(RedisConnectionFactory factory) {
StringRedisTemplate template = new StringRedisTemplate(factory);
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是String 需要配置一下StringSerializer,不然key會亂碼 /XX/XX
template.afterPropertiesSet();
//template.setStringSerializer();
return template;
}
}
簡單的測試
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = {LiveApplication.class})
public class RedisTest {
@Autowired
RedisTemplate redisTemplate;
@Autowired
StringRedisTemplate stringRedisTemplate;
@Autowired
LiveRoomMapper liveRoomMapper;
@Test
public void test() {
stringRedisTemplate.opsForValue().set("name", "xiaozhun");
Assert.assertEquals("xiaozhun", stringRedisTemplate.opsForValue().get("name"));
}
//批量刪除
@Test
public void delete() {
Set<Serializable> keys = redisTemplate.keys("name*");
if (keys.size() > 0)
redisTemplate.delete(keys);
}
//初始化channelID:callback_url 集合
@Test
public void initChannelId() {
List<LiveRoom> list = liveRoomMapper.selectAll();
list.forEach(liveRoom -> {
stringRedisTemplate.opsForValue().set("channelId:" + liveRoom.getChannelId(), liveRoom.getCallbackUrl()+"");
});
}
}
相關推薦
springboot redis 用法簡介
pom.xml <dependency> <groupId>org.springframework.boot</groupId>
SpringBoot HATEOAS用法簡介
REST風格簡介 介紹HATEOAS之前先簡單介紹一下REST,REST 是 Representational state transfer 的縮寫,翻譯過來的意思是表達性狀態轉換。REST是一種架構的風格 Richardson Maturity Model Richardson 提出了REST一種 成熟度模
(轉)Linux下內存映射文件的用法簡介
target 共享 文件 知識 i/o 共享數據 log 需要 使用 簡介: 內存映射文件與虛擬內存有些類似,通過內存映射文件可以保留一個地址空間的區域,同時將物理存儲器提交給此區域,只是內存文件映射的物理存儲器來自一個已經存在於磁盤上的文件,而非系統的頁文
@login_required用法簡介
.py confirm sign direct class eset topic 包含 sig 在django項目中,經常會看到下面這樣的代碼: from django.contrib.auth.decorators import login_required
Redis(一)-簡介
案例 原子性操作 set bsp 免費 slave 硬件 簡單的 原子性 Redis 簡介 Redis 是完全開源免費的,遵守BSD協議,是一個高性能的key-value數據庫。 Redis 與其他 key - value 緩存產品有以下三個特點: Redis支持數據的
Django中 @login_required用法簡介
template 需求 csr view mail fun sig 如果 csrf 我們在網站開發過程中,經常會遇到這樣的需求: 用戶登陸系統才可以訪問某些頁面 如果用戶沒有登陸而直接訪問就會跳轉到登陸界面,而不能訪問其他頁面。 用戶在跳轉的登陸界面中完成登陸後,
Android HttpLoggingInterceptor的用法簡介
nbsp -- ide evel clas 記錄 pla public andro 該攔截器用於記錄應用中的網絡請求的信息。 示例 OkHttpClient client = new OkHttpClient(); HttpLoggingInterceptor l
samtools的用法簡介
ack nbsp default 染色 位置 ons too 結果 標準 1.SAM(sequence Alignment/mapping)數據格式是目前高通量測序中存放比對數據的標準格式,當然他可以用於存放未比對的數據 2.AMTools的主要功能如下: view:
redis學習--簡介和安裝
key-value shel 解壓 過去 內存 下載 local 完成 test 1.redis介紹: Redis 與其他 key - value 緩存產品有以下三個特點: Redis支持數據的持久化,可以將內存中的數據保存在磁盤中,重啟的時候可以再次加載進行使用。 Re
springboot redis簡單結合
call final 重啟 table and prim 時間 狀態 unix 參考: https://www.cnblogs.com/ityouknow/p/5748830.htmlhttp://blog.csdn.net/i_vic/article/details/53
Springboot redis 整合
不優雅 settime 朋友 最大 阻塞 操作 create rom unit 年末將至,是時候該把所學的總結下了。最近正好從eclipes轉到idea,發現idea對模組的支持很棒。這一片先總結下springboot和redis的整合 首先添加redis服務器 直接用do
spring boot 學習(十四)SpringBoot+Redis+SpringSession緩存之實戰
blog 安裝 user 個人 turn pid pass pin star SpringBoot + Redis +SpringSession 緩存之實戰 前言 前幾天,從師兄那兒了解到EhCache是進程內的緩存框架,雖然它已經提供了集群環境下的緩存同步策略,這種同步仍
springboot + redis
oot 判斷 warnings 讀取 remove min 定時 tro 編寫 1.添加依賴包 <dependency> <groupId>org.springframework.boot</groupId> <artifa
Springboot+Redis 配置和使用
geb ops ans ber catch prop service com trac pom.xml 引入redis 開啟緩存 <!-- cache --> <dependency> <
springboot---redis
base util nts pin cache str stp index style <!--redis依賴--> <dependency> <groupId>org.springframework.boot</g
oracle中 start with .. connect by prior.. 用法簡介
bsp 簡單 parent 目錄樹 lena prior conn 就是 比較 我們經常會將一個比較復雜的目錄樹存儲到一個表中。或者將一些部門存儲到一個表中,而這些部門互相有隸屬關系。這個時候你就會用到connect by prior start with。oracle 提
springboot+redis實現分散式session共享
官方文件,它是spring session專案的redis相關的一個子文件:https://docs.spring.io/spring-session/docs/2.0.0.BUILD-SNAPSHOT/reference/html5/guides/boot
mssql sqlserver 分組排序函式row_number、rank、dense_rank用法簡介及說明
轉載:http://www.maomao365.com/?p=5771 摘要: 在實際的專案開發中,我們經常使用分組函式,對組內資料進行群組後,然後進行組內排序: 如: 1:取出一個客戶一段時間內,最大訂單數的行記錄 2: 取出一個客戶一段時間內,最後一次銷售記錄的行記錄
SpringBoot學習_簡介以及微服務
SpringBoot簡介 Spring Boot是用來簡化Spring應用開發,去繁從簡,just run就能建立一個獨立的,產品級別的應用 優點: 快速建立獨立執行的Spring專案以及與主流框架整合 使用嵌入式的Servlet容器,應用無需打成WAR包 s
SpringBoot+Redis 入門
SpringBoot+Redis 入門 redis: 以key-value的形式將資料儲存於記憶體中。其主要資料型別有string、hash、list、set、zset(有序的set)。 redis安裝: windows https://blog.csdn.net/u01