Spring Boot中使用Redis数据库

来源:互联网 发布:航天 开票软件下载 编辑:程序博客网 时间:2024/05/22 14:32

引入依赖

Spring Boot提供的数据访问框架Spring Data Redis基于Jedis。可以通过引入spring-boot-starter-redis来配置依赖关系。

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

参数配置

按照惯例在application.properties中加入Redis服务端的相关配置,具体说明如下:

# REDIS (RedisProperties)# Redis数据库索引(默认为0)spring.redis.database=0# Redis服务器地址spring.redis.host=localhost# Redis服务器连接端口spring.redis.port=6379# Redis服务器连接密码(默认为空)spring.redis.password=# 连接池最大连接数(使用负值表示没有限制)spring.redis.pool.max-active=8# 连接池最大阻塞等待时间(使用负值表示没有限制)spring.redis.pool.max-wait=-1# 连接池中的最大空闲连接spring.redis.pool.max-idle=8# 连接池中的最小空闲连接spring.redis.pool.min-idle=0# 连接超时时间(毫秒)spring.redis.timeout=0
其中spring.redis.database的配置通常使用0即可,Redis在配置的时候可以设置数据库数量,默认为16,可以理解为数据库的schema

@RunWith(SpringJUnit4ClassRunner.class)@SpringApplicationConfiguration(Application.class)public class ApplicationTests {@Autowiredprivate StringRedisTemplate stringRedisTemplate;@Testpublic void test() throws Exception {// 保存字符串stringRedisTemplate.opsForValue().set("name", "hello World!");    }}

参考redisService工具类

import org.springframework.data.redis.core.StringRedisTemplate;import org.springframework.stereotype.Service;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.data.redis.core.RedisTemplate;import java.util.Set;/** * Created by qin on 2016/11/15. */@Servicepublic class RedisService {    @Autowired    private RedisTemplate redisTemplate;//    @Autowired//    private StringRedisTemplate stringRedisTemplate;    /**     * 保存元素对象进入缓存     *     * @param key 存储的Key键     * @param value 存储的Value值     */    public void save (String key, String value) {        redisTemplate.opsForValue().set(key, value);    }    /**     * 删除元素对象从缓存中     *     * @param key 删除的Key键     * @return     */    public void delete (String key) {        redisTemplate.delete(key);    }    /**     * 获得Key对应的值     *     * @param key     */    public <V> V query (String key) {        return (V)redisTemplate.opsForValue().get(key);    }    public <T> Set<T> getKeys (String pattern) {        return redisTemplate.keys(pattern);    }    public RedisTemplate getRedisTemplate() {        return redisTemplate;    }    public void setRedisTemplate(RedisTemplate redisTemplate) {        this.redisTemplate = redisTemplate;    }}


1 0
原创粉丝点击