redis+springboot,RedisTemplate的string、hash api

一.maven中添加依赖:

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

二.application.properties中添加配置:

# Redis数据库索引(默认为0)
spring.redis.database=0
# Redis服务器地址
spring.redis.host=127.0.0.1
# Redis服务器连接端口
spring.redis.port=6379
# Redis服务器连接密码(默认为空)
spring.redis.password=
# 连接超时时间(毫秒)
spring.redis.timeout=10000

三.RedisTemplate的使用:

package demo;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;

import java.util.List;
import java.util.Map;
import java.util.Set;

/**
 * description:
 * author: 
 * date: 2018-12-13 17:13
 **/
public class RedisUtil {

    @Autowired
    RedisTemplate redisTemplate;

    /**
     * string类型设值
     * @param str
     * @param obj
     * @return
     */
    public boolean set(String str,Object obj){
        try {
            redisTemplate.opsForValue().set(str,obj);
            return true;
        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }
    }

    /**
     * string类型获取值
     * @param str
     * @return
     */
    public Object get(String str){
        try {
            Object o = redisTemplate.opsForValue().get(str);
            return o;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }

    /**
     * string类型批新增
     * @param map
     * @return
     */
    public boolean mset(Map<String, Object> map){
        try {
            redisTemplate.opsForValue().multiSet(map);
            return true;
        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }
    }

    /**
     * string类型批获取
     * @param list
     * @return
     */
    public List mget(List<String> list){
        try {
            List list1 = redisTemplate.opsForValue().multiGet(list);
            return list1;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }

    /**
     * string类型获取所有
     * @return
     */
    public List mgetAll(){
        try {
            Set keys = redisTemplate.keys("*");
            List list = redisTemplate.opsForValue().multiGet(keys);
            return list;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }

    /**
     * hash类型批新增
     * @param map
     * @return
     */
    public boolean hmset(Map<String,Object> map){
        try {
            redisTemplate.opsForHash().putAll("hashKey",map);
            return true;
        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }
    }

    /**
     * hash类型获取
     * @param str
     * @return
     */
    public Object hget(String str){
        try {
            Object obj = redisTemplate.opsForHash().get("hashKey", str);
            return obj;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }

    /**
     * hash类型获取所有value
     * @return
     */
    public Object hgetAllValue(){
        try {
            Object obj = redisTemplate.opsForHash().values("hashKey");
            return obj;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }
    /**
     * hash类型获取所有键值对
     *
     * @return
     */
    public Map hgetAll() {
        try {
            Map entries = redisTemplate.opsForHash().entries("hashKey");
            return entries;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }

    /**
     * hash类型删除键值对
     *
     * @param keyArray 键的数组
     * @return
     */
    public boolean hdelete(String[] keyArray) {
        Long delete = redisTemplate.opsForHash().delete("hashKey", keyArray);
        System.out.println("删除的key、value键值对数量 = " + delete);
        return true;
    }


}

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Redis是一个开源的内存数据存储系统,它可以用作数据库、缓存和消息中间件。在Spring Boot中使用Redis可以通过添加相关依赖和配置来实现。 首先,你需要在Maven的pom.xml文件中添加Redis的依赖。可以使用以下代码片段: ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-redis</artifactId> </dependency> ``` 这样就可以引入Spring Boot和Spring Data Redis的相关依赖。 接下来,你需要在application.yml(或application.properties)文件中配置Redis的连接信息。可以参考以下示例: ``` spring: redis: host: 192.168.2.9 port: 6379 password: CacheDB123 ``` 这里配置了Redis的主机地址、端口和密码。 在Spring Boot中,你可以使用RedisTemplate来操作Redis。例如,你可以使用redisTemplate.opsForValue()来操作字符串类型的数据,redisTemplate.opsForHash()来操作哈希类型的数据,redisTemplate.opsForList()来操作列表类型的数据,等等。你可以根据你的需求选择合适的操作方法。 总结起来,使用Redis和Spring Boot可以通过添加依赖、配置连接信息和使用RedisTemplate来实现对Redis的操作。 #### 引用[.reference_title] - *1* *2* [springboot + redis](https://blog.csdn.net/CaBCo/article/details/121993117)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Redis+SpringBoot的简单使用](https://blog.csdn.net/qq13933506749/article/details/118193308)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值