您的位置:首页 > 游戏 > 手游 > 中山网站建设公司哪个好_有哪些互联网公司_珠海seo快速排名_营业推广经典案例

中山网站建设公司哪个好_有哪些互联网公司_珠海seo快速排名_营业推广经典案例

2025/4/9 21:10:32 来源:https://blog.csdn.net/qq_45055856/article/details/146863780  浏览:    关键词:中山网站建设公司哪个好_有哪些互联网公司_珠海seo快速排名_营业推广经典案例
中山网站建设公司哪个好_有哪些互联网公司_珠海seo快速排名_营业推广经典案例

一. 操作字符串类型的数据

package com.sky.test;import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.*;import java.util.concurrent.TimeUnit;@SpringBootTest
public class SpringDataRedisTest {@Autowiredprivate RedisTemplate redisTemplate;@Testpublic void testRedisTemplate() {System.out.println(redisTemplate);  // 首先输出redisTemplate对象看是否为空ValueOperations valueOperations = redisTemplate.opsForValue();  // redis当中的字符串类型数据操作对象HashOperations hashOperations = redisTemplate.opsForHash();     // redis当中的哈希类型数据操作对象ListOperations listOperations = redisTemplate.opsForList();     // redis当中的列表类型数据操作对象SetOperations setOperations = redisTemplate.opsForSet();        // redis当中的集合类型数据操作对象ZSetOperations zSetOperations = redisTemplate.opsForZSet();     // redis当中的有序集合类型数据操作对象}@Testpublic void testString() {redisTemplate.opsForValue().set("city","北京");   // setString city = (String) redisTemplate.opsForValue().get("city");// getSystem.out.println(city);redisTemplate.opsForValue().set("code","1234",3, TimeUnit.MINUTES);     // setexredisTemplate.opsForValue().setIfAbsent("lock","1");   // setnxredisTemplate.opsForValue().setIfAbsent("lock","2");}
}

这里我们使用的是10号数据库,因为我们在配置文件中配置的是10号数据库。我们使用opsForValue()方法来对redis当中的字符串类型的数据进行操作。

1.使用set来进行redis数据库中字符串类型数据的添加

2.使用get查询redis数据库当中字符串类型数据的value

3.使用set(Object key, Object value, long timeout, TimeUnit unit)设置数据库中数据的过期时间,对应redis中的setex命令

4.使用setIfAbsent(Object key, Object value)设置数据库中的数据,如果不存在就加入数据库,如果存在就不加入,对应redis中的setnx命令

之后可以从数据库可视化工具中查看DB10号数据库中的数据内容:

redis当中get到的数据是Object类型的,因此要使用强制类型转换。此外,redis当中的String和Java当中的String有区别,因此会使得其在java当中get到的字符串和redis当中的字符串有区别,如在当前例子中Java中get到的是正常输入,而redis当中会乱码。 code不存在是因为该键值对已过期

lock当中存储的字符串1而不是2,那是因为使用setIfAbsent的话当数据库中的键已存在时,再插入同样键的新值不会生效。 

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com