当前位置: 首页 > 面试题库 >

领域ORM:如何处理地图?

桂浩言
2023-03-14
问题内容

我正在创建一个Android应用,并且需要保留一个Map<String,MyClass>。我刚刚开始使用Realm
ORM
,因为它支持一对一和一对多的枚举和列表。我还找到了解决字符串列表的方法(即,我必须创建一个封装字符串的StringWrapper类。但是,从文档中我了解RealmMap,列表并不存在像这样的简单方法。因此,我正在寻找持久化地图的最佳方法。我目前的想法是用KeyValueObject封装了String(以前的地图关键字)和的对象列表替换我的地图MyClass。类似于Map.Entry。是否还有其他解决方案不需要我重新html" target="_blank">设计域模型技术原因?


问题答案:

如您所见,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()可能会很有用。



 类似资料:
  • 问题内容: 我已经在javaworld.com上阅读了两篇文章(1)(2),有关所有类字段应如何为私有,并且getter / setter方法同样糟糕。对象应该对它拥有的数据进行操作,而不是允许对其进行访问。 我目前正在为Connect Four 进行大学作业。在设计程序时,玩游戏的特工需要访问董事会的状态(以便他们可以决定移动的方向)。他们还需要将此举动传递给游戏,以便可以将其确认为合法举动。在

  • 我试图创建一个在realm.io之上工作的注释处理器。遗憾的是,要使用realm,你需要一个android项目,而要创建一个注释处理器,你需要一个java项目(以便导入javax.annotation.processing.*) 有人知道如何在android库上导入AbstractProcessor和所有其他需要的东西吗?我找不到这样做的方法(已经将目标兼容性和源兼容性切换到1.7)

  • 3.6 ABP领域层 - 领域事件 在C#中,一个类可以定义其专属的事件并且其它类可以注册该事件并监听,当事件被触发时可以获得事件通知。这对于对于桌面应用程序或独立的Windows Service来说非常有用。但是, 对于Web应用程序来说会有点问题,因为对象是根据请求(request)被创建并且它们的生命周期都很短暂。我们很难注册其它类别的事件。同样地,直接注册其它类别的事件也造成了类之间的耦合

  • 3.4 ABP领域层 - 领域服务 3.4.1 简介 领域服务(或者服务,在DDD模式中)是被用来执行领域操作或者业务规则的。Eric Evans 在他的DDD书中这样说过:一个好的Service应该有以下三个特征: 与领域概念相关的操作不是Entity或Value Object 的一个自然部分; 接口是根据领域模型的其它元素定义的; 操作是无状态的。 领域服务和Application Servi

  • DDD DSL DSL(domain-specific languages)即领域特定语言,唯一能够确定DSL边界的方法是考虑“一门语言的一种特定用法”和“该语言的设计者或使用者的意图。在试图设计一个DSL的时候,发现了一些有意思的简单的示例。 DSL示例 jQuery 最流行的DSL jQuery是一个Internal DSL的典型的例子。它是在一门现成语言内实现针对领域问题的描述。 $('.m

  • 我已经尝试将JSON响应添加到Realm数据库中。我通过GSON处理响应,然后尝试转换为realm。我已经为我的响应模型类扩展了RealmObject。我还使用RealmString类通过RealmList处理列表。但当我尝试将GSON应用到领域对象时,我会出错。我正在寻找一个这样的例子,如果有人有一个。感谢所有支持。下面是我的JSON回复。