【效果图】
【前言】
Redis是常用于缓存的非关系型数据库,感觉更像加强型的HashMap的用法,依靠Key和Value保存数据。官方推荐用Jedis来操作Redis数据库,使用和JDBC差不多,一半通过连接池作数据操作。
【Redis安装】
支持windows和linux安装,可以装个windows版本,测试下用例。
地址:https://github.com/MicrosoftArchive/redis/releases
安装后的命令行启动服务
【测试代码】
github提到需要依赖包
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
测试用例,包括单实例和连接池
package jedis.Redis;
import org.junit.Test;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
public class jedisTest {
@Test
/*
* 单实例测试
*/
public void demoSingle(){
//1.设置IP和端口
Jedis jedis =new Jedis("127.0.0.1",6379);
//2.传入数据
jedis.set("name", "jedisSingle");
//3.获取数据
System.out.println(jedis.get("name"));
//4.释放连接
jedis.close();
}
@Test
/*
* 连接池测试
*/
public void demoPool(){
//连接池配置对象-最大连接数-空闲连接数
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxTotal(20);
config.setMaxIdle(10);
//获得连接池
JedisPool jedisPool= new JedisPool(config,"127.0.0.1",6379);
//实例化单个连接
Jedis jedis = null;
try {
jedis = jedisPool.getResource();
jedis.set("name", "jedisPool");
System.out.println(jedis.get("name"));
} catch (Exception e) {
e.printStackTrace();
} finally{
//释放资源
jedis.close();
jedisPool.close();
}
}
}
Redis传入取出数据,更类似于HashMap的方式,建立连接释放资源类似于JDBC。尽管存取数据很快,相对于mysql这些关系型数据库,但是数据类型和非关系的特性,更适合作缓存业务。