Jedis的使用
什么是Jedis?
一款Java操作redis数据库的工具
使用步骤
1.下载redis所需的java包
2.使用步骤
import org.junit.Test;public class Jedis { @Test public void test1(){ //获取连接 //如果使用空参构造,默认值 "localhost",6379端口 redis.clients.jedis.Jedis jedis = new redis.clients.jedis.Jedis(); //设置数据 jedis.set("name","zhangsna"); //关闭连接 jedis.close(); }}Jedis操作不同的redis中的数据结构
1.字符串
设置:set
获取:get
import org.junit.Test;public class Jedis { @Test public void test1(){ //获取连接 redis.clients.jedis.Jedis jedis = new redis.clients.jedis.Jedis(); //设置数据 jedis.set("name","zhangsna"); //获取参数 String name = jedis.get("name");; //关闭连接 jedis.close(); }}2.hash类型:map格式
import org.junit.Test;import java.util.Map;public class Jedis { @Test public void test1(){ //获取连接 //如果使用空参构造默认是localhost,3670端口 redis.clients.jedis.Jedis jedis = new redis.clients.jedis.Jedis(); //设置数据 jedis.hset("user","name","zhangsan"); jedis.hset("user","id","13"); //获取数据 jedis.hget("user","name"); //获取全部数据 Map<String, String> user = jedis.hgetAll("user"); //关闭连接 jedis.close(); }}3.列表类型list
import org.junit.Test;public class Jedis { @Test public void test1(){ //获取连接 //如果使用空参构造默认是localhost,3670端口 redis.clients.jedis.Jedis jedis = new redis.clients.jedis.Jedis(); //设置数据 //左边添加数据 jedis.lpush("list","a"); //右边添加数据 jedis.rpush("list","b"); //获取指定范围内的数据 jedis.lrange("list" ,0,-1); //移除最右边的数据并返回值 String list = jedis.rpop("list"); //移除最左边的数据并返回值 String list1 = jedis.lpop("list"); //关闭连接 jedis.close(); }}4.集合类型:set 不允许重复元素
import org.junit.Test;import java.util.Set;public class Jedis { @Test public void test1(){ //获取连接 //如果使用空参构造默认是localhost,3670端口 redis.clients.jedis.Jedis jedis = new redis.clients.jedis.Jedis(); //设置数据 jedis.sadd("set","a"); jedis.sadd("set","b"); //获取集合中的全部数据 Set<String> set = jedis.smembers("set"); //移除集合中的指定数据 jedis.srem("a"); //关闭连接 jedis.close(); }}5.有序集合类型:sortedset 不允许重复元素,且集合有序
import org.junit.Test;import java.util.Set;public class Jedis { @Test public void test1(){ //获取连接 //如果使用空参构造默认是localhost,3670端口 redis.clients.jedis.Jedis jedis = new redis.clients.jedis.Jedis(); //设置数据 jedis.zadd("sortedset",2,"a"); jedis.zadd("sortedset",1,"b"); //获取集合中的全部数据 jedis.zrange("sortedset",0,-1); //移除集合中的指定数据 jedis.zrem("sortedset", "a"); //关闭连接 jedis.close(); }}Jedis连接池技术
import org.junit.Test;import redis.clients.jedis.JedisPool;import redis.clients.jedis.JedisPoolConfig;public class Jedis { @Test public void test1(){ //创建一个配置对象 JedisPoolConfig jedisPoolConfig = new JedisPoolConfig(); //设置参数 //最大空闲数 jedisPoolConfig.setMaxIdle(50); //最大连接数 jedisPoolConfig.setMaxTotal(50); //创建数据库连接池对象 JedisPool pool= new JedisPool(jedisPoolConfig, "localhost", 6379); //获取连接 redis.clients.jedis.Jedis resource = pool.getResource(); //使用 resource.set("username","zhangsan"); //归还连接到数据库连接池 resource.close(); }}使用工具类创建数据库连接池
配置文件信息(放在src目录下)
host:127.0.0.1port:6379maxTotal:50maxIdle:10工具类代码
import redis.clients.jedis.JedisPool;import redis.clients.jedis.JedisPoolConfig;import java.io.IOException;import java.io.InputStream;import java.util.Properties;public class JedisUtil { private static JedisPool jedisPool; //使用静态代码块加载配置文件 static { //读取配置文件 InputStream resourceAsStream = JedisUtil.class.getClassLoader().getResourceAsStream("jedis.properties"); //创建properties对象 Properties properties = new Properties(); //关联文件 try { properties.load(resourceAsStream); } catch (IOException e) { e.printStackTrace(); } //创建配置文件对象 JedisPoolConfig jedisPoolConfig = new JedisPoolConfig(); jedisPoolConfig.setMaxTotal(Integer.parseInt(properties.getProperty("maxTotal"))); jedisPoolConfig.setMaxIdle(Integer.parseInt("maxIdle")); //初始化jedispool jedisPool=new JedisPool(jedisPoolConfig,properties.getProperty("host"),Integer.parseInt(properties.getProperty("port"))); } //获取连接 public static JedisPool getJedisPool(){ return jedisPool; }}测试类代码
import org.junit.Test;import redis.clients.jedis.JedisPool;public class Jedis { @Test public void test1(){ //使用工具类获取连接池 JedisPool jedisPool = JedisUtil.getJedisPool(); //获取连接 redis.clients.jedis.Jedis resource = jedisPool.getResource(); //使用连接操作 resource.set("name", "zhangsan"); //归还连接 }}以上就是jedis的一些基础操作及怎么使用jedis连接池,这也是我JAVA redis系列的第三篇,后面我会继续更新,写作不易,请各位老铁点个赞支持一下,觉得有帮助的也可以收藏呀,我会经常更新文章,也可以关注我呀

没有评论:
发表评论