日常操作

public static void main(String[] args)
{
Jedis jedis = new Jedis("192.168.222.129", ); //1、开启事务
Transaction transaction = jedis.multi(); //2、执行
transaction.set("k4", "v4");
transaction.set("k5", "v5"); //3、提交事务
transaction.exec(); //4、放弃事务
//transaction.discard();
}

加锁事务

 public static void main(String[] args)
{
TestTx testTx = new TestTx();
boolean retValue = testTx.transMethod();
System.out.println("main=====return value " + retValue);
} private boolean transMethod()
{
// TODO Auto-generated method stub
Jedis jedis = new Jedis("192.168.222.129", );
int balance; //可用余额
int debt;//欠额
int pay = ;//实际话费金额 jedis.watch("balance");
balance = Integer.parseInt(jedis.get("balance"));
if (balance < pay)
{
jedis.unwatch();
System.out.println("您的余额不足");
return false;
}
else
{
System.out.println("============开会消费========");
//1、开启事务
Transaction transaction = jedis.multi();
//2、执行
transaction.decrBy("balance", pay);
transaction.incrBy("debt", pay);
//3、提交事务
transaction.exec();
balance = Integer.parseInt(jedis.get("balance"));
debt = Integer.parseInt(jedis.get("debt")); System.out.println("余额: " + balance);
System.err.println("花费: " + debt);
return true;
}
}

结果

============开会消费========
余额:
main=====return value true
花费:

Redis的实现(java)的更多相关文章

  1. Windows Redis安装,Java操作Redis

    一.Redis 的安装 1.Redis 下载 Windows 版本下载:https://github.com/dmajkic/redis/downloads 2.解压到 C:\redis-2.4.5- ...

  2. Redis入门和Java利用jedis操作redis

    Redis入门和Java利用jedis操作redis Redis介绍 Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库. Redis 与其他 key - val ...

  3. redis中使用java脚本实现分布式锁

    转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/115.html?1455860390 edis被大量用在分布式的环境中,自 ...

  4. 组件-------(一)redis系列--安装部署redis+实现redis分布式缓存 java+Spring+redis

    目的:解决单机session不能共享问题,插入查询数据库时间效率问题,实现分布式缓存. 准备材料:Redis 下载链接 http://pan.baidu.com/s/1dEGTxvV 相关jar包如果 ...

  5. Redis c/c++, java client连接

    Redis 介绍 redis这个想必大家都了解,关于redis的安装參考这里,redis使用文档參见这里,英文文档. Redis Cclient的用法 Redis的cclient Hiredis使用比 ...

  6. spring 集成redis客户端jedis(java)

    spring集成jedis简单实例   jedis是redis的java客户端,spring将redis连接池作为一个bean配置. “redis.clients.jedis.JedisPool”,这 ...

  7. Redis 分布式缓存 Java 框架

    为什么要在 Java 分布式应用程序中使用缓存? 在提高应用程序速度和性能上,每一毫秒都很重要.根据谷歌的一项研究,假如一个网站在3秒钟或更短时间内没有加载成功,会有 53% 的手机用户会离开. 缓存 ...

  8. 使用redis时出现java.util.ArrayList cannot be cast to java.lang.Long

    java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.lang.Long at redis.clients. ...

  9. Redis02 Redis客户端之Java、连接远程Redis服务器失败

    1 查看支持Java的redis客户端 本博文采用 Jedis 作为redis客户端,采用 commons-pool2 作为连接redis服务器的连接池 2 下载相关依赖与实战 2.1 到 Repos ...

  10. Redis 工具类 java 实现的redis 工具类

    最近了解了一下非关系型数据库 redis 会使用简单的命令 在自己本地电脑 使用时必须先启动服务器端 在启动客户端 redis 简介 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内 ...

随机推荐

  1. SAP-批量删除生产订单

    1.SE38运行:PPARCHP1 2.先用COOIS导出订单,已经CLSD,没有删除的

  2. EventEmitter的前端实现

    EventEmitter简介 EventEmitter是Node.js的内置模块events提供的一个类,它是Node事件流的核心,EventEmitter是服务端的东西, 前端已经有event-em ...

  3. js 事件发布订阅销毁

    在vue中 通过$on订阅事件,通过$emit触发事件以此可用来事件跨组件传值等功能,但是有个弊端就是通过这种方式订阅的事件可能会触发多次. 特别是通过$on订阅的事件中如果有http请求,将会造成触 ...

  4. ansible之变量

    一.常用系统变量 1. loop   #表示循环,去读循环体里的变量固定使用{{item}},item是个字典对象item.key=value,例如如下playbook内容: --- - name: ...

  5. ngxin安装之yum安装

    nginx部署至yum安装 1. 配置nginx所需的YUM源 [root@nginx]# cat /etc/yum.repos.d/yum.repo [nginx-stable] name=ngin ...

  6. sql server 怎么查看blocked的线程

    select spid ,blocked from master..sysprocesses

  7. mybatisX插件的使用

    MybatisX 插件 快捷         mapper方法生成对应-----> mapper.xml中 :ALT +enter

  8. HBase 系列(八)——HBase 协处理器

    一.简述 在使用 HBase 时,如果你的数据量达到了数十亿行或数百万列,此时能否在查询中返回大量数据将受制于网络的带宽,即便网络状况允许,但是客户端的计算处理也未必能够满足要求.在这种情况下,协处理 ...

  9. java 路径问题

    java路径存在两种写法"/"和"\\" String path="D:\\1.txt"; String path1="D:/1. ...

  10. 《HelloGitHub》第 41 期

    兴趣是最好的老师,HelloGitHub 就是帮你找到兴趣! 简介 分享 GitHub 上有趣.入门级的开源项目. 这是一个面向编程新手.热爱编程.对开源社区感兴趣 人群的月刊,月刊的内容包括:各种编 ...