SpringBoot之集成SpringDataRedis

Spring-Data-Redis项目(简称SDR)对Redis的Key-Value数据存储操作提供了更高层次的抽象,类似于Spring Framework对JDBC支持一样。关于Spring-Data-Reids的介绍请移步这里(http://docs.spring.io/spring-data/redis/docs/1.4.0.RELEASE/reference/html/ 和这里 http://www.tuicool.com/articles/3aAbMz)。本文只是简单的介绍SpringBoot和SpringDataRedis的集成。

配置JedisConnectionFactory

    @Bean
    private JedisConnectionFactory getJedisConnectionFactory(){
        String[] strServer = redisArguments.getServerName().split(":");
        JedisConnectionFactory jedisConnectionFactory = new JedisConnectionFactory();
        jedisConnectionFactory.setHostName(strServer[0]);
        jedisConnectionFactory.setPort(Integer.parseInt(strServer[1]));
        jedisConnectionFactory.setTimeout(redisArguments.getTimeout());
        return jedisConnectionFactory;
    }
这里可以配置需要的配置:如JedisPoolConfig、JedisCluster、JedisShardInfo。

配置RedisTemplate

package com.zkn.learnspringboot.redis;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;

/**
 * Created by zkn on 2016/8/21.
 */
@Component
public class RedisTemplementFactory {

    @Autowired
    private JedisConnectionFactory jedisConnectionFactory;

    @Bean
    private StringRedisTemplate getStringRedisTemplate(){

        return new StringRedisTemplate(jedisConnectionFactory);
    }
}
这里我用了StringRedisTemplate来对字符串进行操作。

字符串的存取操作

保存字符串:
    @Autowired
    private StringRedisTemplate stringRedisTemplate;

    @RequestMapping("putSpringRedisTemplemetSave.do")
    public String putSpringRedisTemplemet(){
        ValueOperations valueOperations = stringRedisTemplate.opsForValue();
        StringRedisSerializer serializer = new StringRedisSerializer();
        stringRedisTemplate.setKeySerializer(serializer);
        stringRedisTemplate.setValueSerializer(serializer);
        PersonDomain personDomain = new PersonDomain();
        personDomain.setId(1);
        personDomain.setPassWord("zhangsanlisia");
        personDomain.setUserName("张三娜丽丝");
        valueOperations.set("1",personDomain.getUserName());
        return "保存成功了!!!!";
    }
取出刚才保存的字符串
    @RequestMapping("getSpringRedisTemplemetSave.do")
    public String getSpringRedisTemplemet(HttpServletRequest request){
        String str = request.getParameter("key");
        ValueOperations valueOperations = stringRedisTemplate.opsForValue();
        return (String) valueOperations.get(str);
    }


 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值