首页 > 技术文章 > springboot 集成 jedis

huobi 2018-10-24 16:19 原文

springboot 集成 jedis

非常简单:

第一步:在配置文件properties配置 连接信息

第二部:编写配置类

第三部:调用

第一步具体:

pom依赖要加上

<dependency>  
    <groupId>redis.clients</groupId>  
    <artifactId>jedis</artifactId>  
    <version>2.8.2</version>  
</dependency> 

properties配置文件:

#jedis配置===============================
#redis服务器地址
jedis.pool.host=192.168.184.100
#redis服务器端口
jedis.pool.port=6379
#最大连接数
jedis.pool.config.maxTotal=100
#最小空闲连接数
jedis.pool.config.maxIdle=10
#获取连接时的最大等待毫秒数
jedis.pool.config.maxWaitMillis=100000
#redis的auth密码
jedis.pool.password=0.0.0.

第二部:编写配置文件给spring管理

package com.cy.example.config;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import com.cy.example.utils.RedisClient;

import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
import redis.clients.jedis.Protocol;


@Configuration
public class RedisConfig {

    private Logger logger = LoggerFactory.getLogger(RedisClient.class);

    @Bean(name= "jedis.pool")  
    @Autowired  
    public JedisPool jedisPool(@Qualifier("jedis.pool.config") JedisPoolConfig config,   
                @Value("${jedis.pool.host}")String host,   
                @Value("${jedis.pool.port}")int port,
                @Value("${jedis.pool.password}")String password) {  
        logger.info("缓存服务器的地址:"+host+":"+port);
        return new JedisPool(config, host, port,Protocol.DEFAULT_TIMEOUT,password);  
    }

    @Bean(name= "jedis.pool.config")  
    public JedisPoolConfig jedisPoolConfig (@Value("${jedis.pool.config.maxTotal}")int maxTotal,  
                                @Value("${jedis.pool.config.maxIdle}")int maxIdle,  
                                @Value("${jedis.pool.config.maxWaitMillis}")int maxWaitMillis) {  
        JedisPoolConfig config = new JedisPoolConfig();  
        config.setMaxTotal(maxTotal);  
        config.setMaxIdle(maxIdle);  
        config.setMaxWaitMillis(maxWaitMillis);  
        return config;  
    }  
}

第三部:编写测试类

package com.bicon.basedemo.controller;

import java.util.Arrays;
import java.util.List;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

import javax.annotation.Resource;

import org.omg.CORBA.PRIVATE_MEMBER;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;


@RestController
@RequestMapping("/test")
public class test {
    
//    @Resource
//    RedisOperation redisOps;
    
    @Resource
    private JedisPool jedisPool;

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String[] playerStrings = {"1","2","3"};
        List<String> listPlayers = Arrays.asList(playerStrings);
        listPlayers.forEach((player)->System.out.println(player));
    }

    @RequestMapping("/redis")
    public String redisTest() {
        Jedis jedis = jedisPool.getResource();
        jedis.set("watch", "key");
        jedis.close();
        return 1 +"";
    }
}

redis查看结果

 

推荐阅读