美文网首页
java连接redis

java连接redis

作者: 王古 | 来源:发表于2019-03-06 12:44 被阅读0次

语言语言:Java
专用数据库:redis

安装redis

image.png

启动redis

image.png

为了实现连接,需要导入两个程序包,分别为:jeids-2.9.0.jar和commons-pool-1.5.4

image.png

代码实现

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package testredis;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Scanner;
import redis.clients.jedis.Jedis;
/**
 *
 * @author weifeng
 */
public class TestRedis {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        
        while(true){
            System.out.println("功能");
            System.out.println("1:添加数据");
            System.out.println("2:更改数据");
            System.out.println("3:查询所有数据");
            System.out.println("4:根据key查询数据");
            System.out.println("5:删除数据");
            System.out.println("6:查看key是否存在");
            System.out.println("7:操作lis的例子");
            System.out.println("8:操作map的例子");
            System.out.println("9:操作set的例子");
            System.out.println("0:退出");
            System.out.println("请输入你的选择:");
            
        int x;
        Scanner input = new Scanner(System.in);
        x = input.nextInt();
        switch(x){
            case 1:{
                new TestRedis().save();
                break;}
            case 2:{
                new TestRedis().update();
                break;}
            case 3:{
                new TestRedis().findAll();
                break;}
            case 4:{
                new TestRedis().findByKey();
                break;}
            case 5:{
                new TestRedis().del();
                break;}
            case 6:{
                new TestRedis().key();
                break;}
            case 7:{
                new TestRedis().list();
                break;}
            case 8:
                new TestRedis().map();
                break;
            case 9:{
                new TestRedis().set();
                break;}
            case 0:
                return;
                //System.exit(0);
           
            default:
                break;
        }
        }
        // TODO code application logic here
    }
    protected static Jedis jedis = new Jedis("127.0.0.1", 6379);
    
    //添加数据(key/value)
    public void save(){
        System.out.println("请输入key:");
        Scanner in_k = new Scanner(System.in);
        String k = in_k.nextLine();
        System.out.println("请输入value");
        Scanner in_v = new Scanner(System.in);
        String v = in_v.nextLine();
        jedis.set(k, v);
    }
    
    //查询所有
    public void findAll(){
        System.out.println(jedis.keys("*"));
    }
    
    //根据Key查询数据
    public void findByKey(){
        System.out.println("请输入要查找的key:");
        Scanner in_k = new Scanner(System.in);
        String k = in_k.nextLine();
        System.out.println(jedis.get(k));
    }
    
    //根据Key修改数据
    public void update(){
        System.out.println("请输入要修改的key:");
        Scanner in_b = new Scanner(System.in);
        String b = in_b.nextLine();
        System.out.println("请输入修改后的key:");
        Scanner in_a = new Scanner(System.in);
        String a = in_a.nextLine();
        jedis.rename(b, a);
    }
    
    //根据Key删除数据
    public void del() {
        System.out.println("请输入要删除的key:");
        Scanner in_d = new Scanner(System.in);
        String d = in_d.nextLine();
        jedis.del(d);
    }
    
    //操作key
    public void key() {
        System.out.println("请输入要检查存在的key:");
        Scanner in_y = new Scanner(System.in);
        String y = in_y.nextLine();
        System.out.println(jedis.exists("y"));
        //System.out.println(jedis.del("id"));
    }

    //操作List
    public void list() {

        // 从头添加
        jedis.lpush("list", "tom", "jack", "jason", "peter", "lc", "easy");

        // 从尾添加
        jedis.rpush("list", "andy", "eleven");

        // 返回List长度
        jedis.llen("list");

        // 取值
        List<String> list = jedis.lrange("list", 0, -1);
        for (String string : list) {
            System.out.println(string);
        }
    }

    //操作Map
    public void map() {
        jedis.hset("Mcity", "c1", "北京");
        System.out.println("取值:" + jedis.hget("city", "c1"));

        Map<String, String> map = new HashMap<String, String>();
        map.put("c1", "桂林");
        map.put("c2", "天津");
        map.put("c3", "合肥");
        jedis.hmset("Mcity2", map);

        List<String> list = jedis.hmget("Mcity2", "c1", "c2", "c3");
        for (String string : list) {
            System.out.println(string);
        }
        System.out.println(jedis.hlen("Mcity2"));
    }

    //操作Set
    public void set() {
        jedis.sadd("city", "北京", "上海", "南京", "武汉", "安徽", "广州", "深圳", "山东");
        System.out.println("取最上面的值:" + jedis.spop("city"));
        System.out.println("随机取值:" + jedis.srandmember("city"));

        jedis.sadd("city2", "北京", "武汉", "河北", "张家界", "辽林", "云南", "陕西", "山西", "黑龙江");
        System.out.println("交集:" + jedis.sinter("city", "city1"));
        System.out.println("并集:" + jedis.sunion("city", "city1"));
        System.out.println("差集:" + jedis.sdiff("city", "city1"));
    }
    
}

运行结果

image.png

相关文章

网友评论

      本文标题:java连接redis

      本文链接:https://www.haomeiwen.com/subject/pestpqtx.html