Realm ORM:如何处理 Maps?

2023-11-24

我正在创建一个 Android 应用程序,我需要坚持Map<String,MyClass>。 我刚刚开始使用领域 ORM,因为它支持一对一和一对多、枚举和列表。我还找到了字符串列表的解决方法(即我必须创建一个封装字符串的 StringWrapper 类。 然而,从文档我明白没有简单的方法RealmMap,就像列表一样。 所以,我正在寻找保存地图的最佳方法。 我当前的想法是用对象列表替换我的地图KeyValueObject封装一个String(前地图键)和MyClass。类似于Map.Entry。 是否有其他解决方案不需要我因技术原因重新设计领域模型?


正如您所注意到的,Realm 尚不支持地图:https://github.com/realm/realm-java/issues/759

您可以使用模型类:

class MyData extends RealmObject {
    private RealmList<MyMapEntry> myMap;
}

class MyMapEntry extends RealmObject {
    private String key;
    private MyClass value;
}

假设你有一个MyData称为的对象myData并且您希望获取与关联的值myKey,查询MyClass myClass = myData.getMyMap().where().equalTo("key", myKey).firstFirst()可能有用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Realm ORM:如何处理 Maps? 的相关文章

  • Spring Boot Data JPA 从存储过程接收多个输出参数

    我尝试通过 Spring Boot Data JPA v2 2 6 调用具有多个输出参数的存储过程 但收到错误 DEBUG http nio 8080 exec 1 org hibernate engine jdbc spi SqlStat
  • 图像作为电子邮件附件

    我想构建一个应用程序 我可以在电子邮件中附加图像 打开图像并将其设置为我的壁纸 我想让它跨平台 所以你能告诉我是否可以使用phonegap 或者我是否必须为iphone和android构建一个本机应用程序 您好 如果您只想通过电子邮件附加图
  • 从 BroadcastReceiver 类调用活动方法

    我知道我可以做一个内部接收器类来调用接收器中的任何方法 但我的主要活动太大了 要做的事情也很多 因此 我需要一个扩展广播接收器的类 但它不是内部类 并且可以从我的主要活动中调用一种方法 我不知道是否可能 但我的活动是家庭活动和 single
  • 如何对不同的参数类型使用相同的java方法?

    我的问题 我有 2 个已定义的记录 创建对象请求 更新对象请求 必须通过实用方法进行验证 由于这两个对象具有相同的字段 因此可以对这两种类型应用相同的验证方法 现在我只是使用两种方法进行重载 但它很冗长 public record Crea
  • okhttp 获取失败响应

    我已经在我的 android 客户端中实现了 okhttp 来进行网络调用 当我收到失败响应时 我会收到失败代码以及与该代码相关的文本作为消息 但我没有收到服务器发送给我的自定义失败响应 在我实施的代码中的失败响应中 我收到的消息只是 错误
  • Android 中如何通过彩信发送图片?

    我正在开发多媒体应用程序 我正在通过相机捕获一张图像 并希望将该图像和文本发送到其他号码 但我不知道如何通过彩信发送图像 MMS 只是一个 http post 请求 您应该使用执行请求额外的网络功能 final ConnectivityMa
  • 不接受任何内容也不返回任何内容的函数接口[重复]

    这个问题在这里已经有答案了 JDK中是否有一个标准的函数式接口 不接受也不返回任何内容 我找不到一个 像下面这样 FunctionalInterface interface Action void execute 可运行怎么样 Functi
  • 专门针对 JSP 的测试驱动开发

    在理解 TDD 到底是什么之前 我就已经开始编写测试驱动的代码了 在没有实现的情况下调用函数和类可以帮助我以更快 更有效的方式理解和构建我的应用程序 所以我非常习惯编写代码 gt 编译它 gt 看到它失败 gt 通过构建其实现来修复它的过程
  • Android 中的处理程序与异步调用

    目前我正在使用处理程序来调用 Web 服务方法以使其在后台运行 问题是它需要更多的时间来给出响应 在性能方面似乎更昂贵 现在我计划使用异步调用 哪一个是最好的 Android 中的处理程序和异步调用有什么区别 请帮我想出一个最好的解决方案
  • 在命令行上卸载 Android SDK 的选定部分

    这与 卸载旧的 Android SDK 版本 https stackoverflow com questions 15182377 uninstall old android sdk versions 除非我想在无头 Linux CI 服务
  • 如何检查 Android 中的同步设置

    我正在构建一个 Android 应用程序 我需要检查设备中注册的每个单独帐户的同步设置 我知道我可以通过 ContentResolver 类来做到这一点 但我遇到了一些问题 我已设法获取设备上所有帐户的列表 但我不知道在运行时从哪里获取特定
  • 没有用于警告的设置器/字段 Firebase 数据库检索数据填充列表视图

    我只是想将 Firebase 数据库中的数据填充到我的列表视图中 日志显示正在检索数据 但适配器不会将值设置为列表中单个列表项中的文本 它只说 没有二传手 场地插入值 这让我觉得我的设置器没有正确制作 但 Android Studio 自动
  • 包 javax.el 不存在

    我正在使用 jre6 eclipse 并导入 javax el 错误 包 javax el 不存在 javac 导入 javax el 过来 这不应该是java的一部分吗 谁能告诉我为什么会这样 谢谢 米 EL 统一表达语言 是 Java
  • 问题:为什么React Native Video不能全屏播放视频?

    我正在react native 0 57 7 中为android和ios创建一个应用程序并使用反应本机视频 https github com react native community react native video播放上传到的视频
  • 通过电子邮件发送文本文件附件

    我正在尝试附加一个文本文件以便通过电子邮件发送 但每当我打开电子邮件应用程序时 它都会说该文件不存在 请帮助 Intent i new Intent Intent ACTION SEND i setType text plain i put
  • 没有支持 FEATURE_CAMERA_EXTERNAL 的 Android 设备

    根据this doc https source android com devices camera external usb cameras一些 Android 设备允许使用 Camera2 API 访问外部 USB 摄像头 我检查了大约
  • 在java中为组合框分配键

    我想添加一个JComboBox在 Swing 中这很简单 但我想为组合中的每个项目分配值 我有以下代码 JComboBox jc1 new JComboBox jc1 addItem a jc1 addItem b jc1 addItem
  • 在 Android 应用程序资源中使用 JSON 文件

    假设我的应用程序的原始资源文件夹中有一个包含 JSON 内容的文件 我如何将其读入应用程序 以便我可以解析 JSON See 开放原始资源 http developer android com reference android conte
  • 使用 svn 1.8.x、subclise 1.10 的 m2e-subclipse 连接器在哪里?

    我读到 m2e 的生产商已经停止生产 svn 1 7 以外的任何版本的 m2e 连接器 Tigris 显然已经填补了维护 m2e subclipse 连接器的空缺 Q1 我的问题是 使用 svn 1 8 x 的 eclipse 更新 url
  • 发布的 Android apk 出现错误“包文件未正确签名”

    我最近将我的应用程序上传到 Android 市场 但是由于错误 下载时它拒绝运行 包文件未正确签名 我首先使用 eclipse 发布了数据包 右键单击导出 创建密钥库然后发布 但它拒绝工作 然后我下载了 keytool 和 jarsigne

随机推荐

  • 实体框架循环引用

    再次尝试这个问题 因为我的第一次尝试几乎没有连贯性 p 所以我非常困惑并使用 Entity Framework Code First 我有一个森林课 我有一个树类 每个森林可以有很多树 当我尝试序列化时 我得到了循环引用 public cl
  • 将数组传递给构造函数而不声明它?

    在处理中 我定义了以下类 class SomeClass SomeClass int someArray println someArray 现在我想创建该类的实例 但在将数组传递给构造函数时遇到问题 SomeClass myVar new
  • 每 5 分钟运行一次 PHP 脚本并避免竞争条件

    我有一个 php 脚本 需要每 5 分钟运行一次 目前我正在使用 cron 作业来运行它 并且效果很好 但我的主机只允许最短时间 15 分钟 所以我的问题是 我可以使用访问者每5分钟触发一次php脚本的运行吗 我可以轻松地记录它上次运行的时
  • Swift:带有中心圆形按钮的自定义 TabBar

    I try to create custom tabbar like the below picture Below is the result i get 下面是我当前的代码 class CustomTabBarController UI
  • 如何使用 objdump 反汇编单个函数?

    我的系统上安装了一个二进制文件 并且想查看给定函数的反汇编 最好使用objdump 但其他解决方案也是可以接受的 From 这个问题我了解到 如果我只知道边界地址 我也许能够反汇编部分代码 从这个答案我已经学会了如何将分割的调试符号转回单个
  • 如何在 iOS 中渲染拉伸文本?

    给定一个矩形区域 我想使用特定字体渲染一些文本并获取渲染的文本填写矩形 如下图所示 这与仅更改字体大小不同 将其渲染为位图然后缩放它不是一个选项 它看起来很糟糕 矢量图形就是做到这一点的方法 Solution 我想出了以下似乎对我的目的有用
  • 从 android 加密并在 CryptoJS 中解密

    我对 AES 加密和解密非常陌生 在我的应用程序中 我必须解密从服务器获得的数据 我收到的数据是使用 CryptoJS 库加密的 解密效果非常好 但是 在将数据发布到服务器时 我必须再次加密数据并将其发送到服务器 这没有提供适当的加密 我已
  • 如何在远程计算机上执行命令?

    我在服务器中有一个共享文件夹 我需要对某些文件远程执行命令 我怎么做 服务器上需要运行哪些服务才能正常工作 一些细节 只能使用 C 服务器上不能安装任何东西 另一种解决方案是使用WMI NET 或 Windows 管理规范 使用 NET F
  • Swift:标签文本-->“致命错误:在解包可选值时意外发现 nil”

    就像标题中所说的那样 我试图通过单击按钮来更改标签文本 错误出现在行self playerChoice text You Rock import UIKit class ViewController UIViewController var
  • 在 Mathematica 中读取 UTF-8 编码的文本文件

    我怎样才能读到utf 8编码Mathematica 中的文本文件 这就是我现在正在做的事情 text Import charData txt Text CharacterEncoding gt UTF8 但它告诉我 CharacterEnc
  • 使用setuptools,如何在安装时下载外部数据?

    我想创建一些非常易于使用的 pip 包 用于在 Python 中加载常见的机器学习数据集 是的 有些东西已经存在 但我希望它更简单 我想要实现的是 用户运行pip install dataset pip 下载数据集 例如通过wget htt
  • “Xcode”已损坏,无法打开。您应该将其移至垃圾箱

    已安装XCode 6 on Mavericks 它不运行 将操作系统更新为Yosemite 10 10 现在 Xcode app 通过 dmg 安装 启动失败并显示错误消息 Xcode is damaged and can t be ope
  • 使用 jQuery,如何动态设置选择框的大小属性?

    Using jQuery 如何动态设置选择框的大小属性 我想将其包含在这段代码中 mySelect bind click function myOtherSelect children remove var options for var
  • VS 2008 Professional、智能设备 .NET C# 项目 - 构建缓慢

    我有 VS 2008 Professional 和智能设备 NET C 项目 我总共有大约 100 个 cs 文件 构建需要很长时间 我必须等待链接器大约 每次编译项目需要 1 分钟 60 秒 我有 Core i3 4GB RAM 7200
  • 如何更改Kafka主题的副本数量?

    生产者或管理员创建 Kafka 主题后 如何更改该主题的副本数量 要增加给定主题的副本数量 您必须 1 在自定义重新分配 json 文件中指定额外副本 例如 您可以创建增加复制因子 json并将此内容放入其中 version 1 parti
  • 不安全的发布并发java [重复]

    这个问题在这里已经有答案了 Java并发实践书里已经给出了不安全发布的例子 public class Holder private int n public Holder int n this n n public void assertS
  • InPlaceBitmapMetadataWriter.TrySave() 返回 true 但不执行任何操作

    在 Windows 7 中的某些 JPG 文件 EPS 预览 由 Adob e Illustrator 生成 上 InPlaceBitmapMetadataWriter TrySave 在调用一些 SetQuery 后返回 true 但不执
  • Qt 如何打开当前目录中的文件?或者这有什么问题?

    我正在尝试在可执行文件的当前位置打开一个 xml 文件 QString path QDir currentPath path append acc xml QFile file path if file open QIODevice Rea
  • 如何为 MySQL 日期时间列设置默认值?

    如何为 MySQL 日期时间列设置默认值 在 SQL Server 中是getdate MySQL 的等价物是什么 如果这是一个因素的话 我正在使用 MySQL 5 x 重要编辑 现在可以使用 DATETIME 字段来实现这一点 因为MyS
  • Realm ORM:如何处理 Maps?

    我正在创建一个 Android 应用程序 我需要坚持Map