java - Aerospike - 如何使用 Java 在给定列表中插入唯一项?
问题描述
如果我运行下面的代码,来自 getUserName() 的值将附加到列表中。但是,如果我再次运行它,则会再次插入相同的值。我的问题是,如何确保该值仅附加一次(唯一)?
我当前的代码
Operation operation = ListOperation.append("names", Value.get(usr.getUserName()));
Record record = client.operate( policy, key, operation );
示例:将“名称”bin 视为字符串列表。
'LIST["T1", "T2"]'
如果我再次添加 T2,列表应该保持不变。
解决方案
ListOperation.append()
可以带 a ListPolicy
,它带标志。ListWriteFlags
对于诸如此类的写入操作,如果您希望仅在新的唯一列表元素时才添加值,则应将其组合起来ADD_UNIQUE
。NO_FAIL
推荐阅读
- c - 有没有用 cygwin 为 nppexec 编译 C 代码的脚本?
- css - 安全区域插入 CSS SCSS 的自定义值
- java - 是否有可能在被调试者端用 Java 获取 JDI 当前的 StackFrame?
- javascript - 从 React 中的导入函数获取状态挂钩值
- swift - 我们可以以编程方式将 csv 文件存储在不同的 iCloud 帐户或苹果帐户中吗?
- python-3.x - Python 如何在 numpy 数组中找到与曲线路径相交的直线?
- windows - 如果将主机添加到 daemon.json,Windows Docker 守护程序会崩溃
- excel - 将 PDF 转换为 Word 并从第 2 页到最后一页
- python - 敌人射弹攻击快速问题的方法
- javascript - React useContext 在延迟后给出输出