首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >业务模型+数据库Mapper + Joins

业务模型+数据库Mapper + Joins
EN

Stack Overflow用户
提问于 2011-05-17 00:15:44
回答 2查看 479关注 0票数 2

我正在学习业务模型和UML。我读到“模型”是一系列的“业务对象”。

据我所知,一个模型将是‘博客’,而业务对象可以是‘帖子’和‘评论’。“Blog”决定使用哪些对象以及如何使用适当的映射器。

我拼凑了几个UML图来探索这个概念,它看起来确实很符合逻辑。不过,我有点困惑:

问题#1 -在Joomla模型中,似乎表示一个单一的“业务对象”(而不是协调多个业务对象和映射器)。Joomla对模型采用了不同的方法吗?

问题#2 -“Mapper”对象在查询中执行左联接是否可以接受?还是应该将这种逻辑移到“服务”层?

使用数据库的左连接功能似乎是最合乎逻辑的,但我不知道这如何适合(Mapper + BusinessObject + Model + Service)设计。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-05-17 00:54:32

在许多框架和应用程序中,您会发现一个Model = Business对象,并且经常会将Mapper内部化为某种奇异的基本模型,所有其他人都会对其进行扩展。您还会发现他们中的许多人缺乏定义良好的服务层。

这将提供给您关于映射器和服务的第二个问题。我通常不使用服务层,但理想情况下,您的映射程序将得到来自DB的数据,我认为它通常驻留在服务层中,然后它将数据映射到业务对象中。但是,在使用映射器时,我通常会将特定于表的db逻辑直接集成到私有或受保护的映射器中。

然而,在大多数情况下,im使用通常实现活动记录的ORM,因此在描述映射器本身时没有真正的隔离,然后倾向于按照我在第一段中描述的方式工作。

此外,Joomla可能不是研究这些概念的最佳应用程序。实际上,大多数PHP应用程序都不是很好的例子,无论它是Joomla、PHPBB、Drupal还是其他:-)

票数 1
EN

Stack Overflow用户

发布于 2011-05-17 08:29:09

在java语言中,持久性注释在代码中作为java注释编写。这真的很酷,因为您可以专注于对象,从而在类图中对应用程序进行建模。

请注意,只有类图具有真正的代码等效,而其他图则使用带有代码生成器的模型驱动开发。这一点很重要,因为只有类图可以一起用于Business和mapper。

您仍然可以使用AndroMDA并使用代码生成器创建持久化层,但我认为这种方法在使用Java代码时已经死了。

它是如何工作的。对类图进行建模以创建静态对象(例如包、类、接口、枚举等)类图中的应用程序。然后添加持久性构造型,这将立即在代码中创建java注释。最后,要创建数据库,只需使用Hibernate映射器,它将在条目中使用java代码并生成数据库。在部署阶段,您将需要直接在与数据库相关的代码sql查询中编写代码,但这是最新的、通常没有关键的开发,可以在离岸国家完成。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6024877

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档