redis之jedis的事务操作

#获取redis连接

Jedis jedis=new Jedis("127.0.0.1",6379);

#开启jedis事务

Transaction multi=jedis.multi();

#添加数据到redis中

multi.set("ka", "va");

#jedis事务提交

multi.exec();

#jedis事务回滚

multi.discard();

#完整案例如下:

	Jedis jedis=new Jedis("127.0.0.1",6379);
	Transaction multi=jedis.multi();//开启redis事务
	try {
	//设置数据
		multi.set("ka", "va");
		multi.set("kb", "vb");
		int num=1/0;
		multi.set("kc", "vc");
	} catch (Exception e) {
		//multi.discard();
		e.printStackTrace();
	}
	//redis事务提交
	multi.exec();		
以上代码的结果是:redis成功保存ka,kb,不会保存kc。


Jedis jedis=new Jedis("127.0.0.1",6379);
//开启事务
	Transaction multi=jedis.multi();
	try {
		multi.set("ka", "va");
		multi.set("kb", "vb");
		int num=1/0;	
		multi.set("kc", "vc");
	} catch (Exception e) {
	//redis事务回滚
		multi.discard();
		e.printStackTrace();
	}
	//redis事务回滚
	multi.exec();	
	以上代码的结果是:redis不会保存ka,kb,kc.

你可能感兴趣的:(java之redis,redis之jedis)