Android 如何将数据库中的数据转换到某个建筑实体中
现在我正在开发Android应用程序,它有一个主要的活动,就是通过GLSurface显示一些数据。这些数据可以通过多种方式进行更改。为此,我有几个片段,其中包含一些具有额外逻辑的变体列表。问题是我需要以某种方式将数据从一个地方传输到另一个地方 例如: 我有一个包含元素列表的片段。我使用带有自定义适配器的RecyclerView。我正在用数据库中的数据填充列表<例如,code>SomeThingDBEntity。当我从房间数据库(使用房间实体)获取它时,它有一些额外的字段,这些字段仅用于在RecyclerView中显示元素。我需要将用户的选择从适配器发送到片段,然后从片段发送到活动,然后活动将其发送到包含GLSurface工作逻辑的某个类<例如,代码>某事物的名称。现在我只传递Android 如何将数据库中的数据转换到某个建筑实体中,android,database,architecture,Android,Database,Architecture,现在我正在开发Android应用程序,它有一个主要的活动,就是通过GLSurface显示一些数据。这些数据可以通过多种方式进行更改。为此,我有几个片段,其中包含一些具有额外逻辑的变体列表。问题是我需要以某种方式将数据从一个地方传输到另一个地方 例如: 我有一个包含元素列表的片段。我使用带有自定义适配器的RecyclerView。我正在用数据库中的数据填充列表SomeThingDBEntity。当我从房间数据库(使用房间实体)获取它时,它有一些额外的字段,这些字段仅用于在RecyclerView中
SomeThingGLentity
为显示数据而要求的字段(int
,String
等),但将来这个列表可能会增加。我还可以直接发送SomeThingDBEntity
,并仅在最后将更改应用到somethingLentity
时获取必填字段。但是这样使用房间DB实体可以吗
有没有更好的办法?我还可以创建只包含必填字段的第三个类。但是该放在哪里,怎么称呼呢?也许有一些最佳方式的模式或指南…看起来您需要一个数据映射器。类似于这个-。 如果使用这种方法,您将能够封装从DBEntity到BusinessEntity的转换逻辑,并且如果您将更改其中一种方法中的数据格式,则只需要编辑映射器