问题标签 [domain-object]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1504 浏览

design-patterns - 哪种设计模式与汇编器模式相反?

据我了解,Assembler 是一种用于将域对象转换为 DTO 的设计模式。

您将把用于将 DTO 转换为域对象的设计模式称为什么?

0 投票
1 回答
1027 浏览

unit-testing - 在域对象约束中使用 grails 配置值

圣杯 2.2.0

如何访问 Grails 域对象约束中的自定义配置变量。

我想要这样的东西:

但它因“没有这样的属性:grailsApplication”而失败。我试图通过遵循在域对象中获取 grails 2.0.0M1 配置信息和静态范围的建议来使其工作?但还没有设法使任何组合起作用。

如何访问域对象约束中的配置?此外,如何在域约束的单元测试中处理这种情况?

0 投票
4 回答
56308 浏览

model-view-controller - 关于 MVC 的领域、模型和实体之间的区别

有人可以通过示例解释这三个概念以及它们之间在 MVC 框架方面的区别。对我来说,这些看起来几乎是等价的,而且似乎它们在某些文章中可以互换使用,而在其他文章中却没有。

0 投票
0 回答
865 浏览

grails - 尽管 hasMany 关系中的对象存在约束错误,但 Grails save() 通过

在 hasMany 关系下处理域类上的域保存错误的正确方法是什么?即使在拥有的对象上存在验证错误,在关系的拥有方调用 save() 似乎也会返回 true。

我应该如何在运行代码或集成测试中对此进行测试?

我已将我的问题简化为以下简单案例。

.

这里有两个关于如何做到这一点的建议。两者都不是很优雅。

第一个在 hasMany 关系上分别调用 save() 。这里的好处是我们从测试用例中得到了确切的错误。这相当麻烦。

另一种方法使用 try/catch 来检测异常失败。这里的问题是我们无法知道出了什么问题,因此无法实际测试域约束是否按预期工作。

在应用程序代码中测试和反应的正确方法是什么?

0 投票
1 回答
362 浏览

grails - Grails Spring Security ACL 域对象方法安全

我的问题是:是否可以保护域对象方法甚至像 findByName 这样的动态方法?

它在服务方法上工作得很好,但我不能让它在域实例方法或域静态方法上工作。

当从控制器调用时,listDummies 会返回所有虚拟对象,即使没有用户连接也是如此。

我该怎么做才能使它起作用?

提前感谢您提供的帮助。

0 投票
3 回答
1080 浏览

mysql - 如何在grails executeupdate中使用mysql时间函数

我正在尝试使用 domain.executeUpdate 从我的表中删除 1 个月大的记录,如下所示

我正在尝试在查询中使用 MySQL 日期函数。

但这失败并出现错误

我们如何在 executeUpdate 语句中使用 My SQL 日期时间函数

请注意,此表有大量数据,因此无法获取和删除单个记录

0 投票
2 回答
278 浏览

php - 如何对域对象应用版本控制

我已经了解到,通过域驱动设计,域对象不会保留在我的应用程序中,而是根据需要创建和删除。

我认为这可能会导致我的应用程序出现新情况,我现在必须考虑我正在处理的域对象的版本。

在我过去的日子里,我会在那里更新用户名,然后,现在我在对其进行操作后将整个用户获取并存储为一个对象,我担心存在覆盖另一个用户对相同的更改所做的更改的风险目的。

处理这个问题的正确方法是什么?数据库中的简单版本字段?然后,您将如何处理用户尝试覆盖的情况?

当我写这篇文章时,我意识到我的旧应用程序可能有类似的问题,但我觉得在处理域对象时它更像是一个问题......

0 投票
1 回答
106 浏览

datamapper - 3层架构和数据映射器

我在 BAL 有一个域对象,应该在 DAL 有相应的数据映射器。众所周知,数据映射器类将包含更新、删除、FindById、FindByName 等存储和检索方法。

我了解应该如何在 BAL 中使用这些 DAL 方法,但是 UI 层呢,UI 层不应该直接访问 DAL,这是否意味着我必须将具有确切签名的方法添加到 BAL 的域对象类中是否应该将某个数据库访问操作的 UI 调用传递给他们的 DAL 对应方法?或者我应该怎么做才能通过 UI 访问 DAL?

0 投票
1 回答
660 浏览

java - Java Spring,使用域对象

我正在构建一个 Spring MVC Web 应用程序,它使用 JPA/Hibernate 来存储对象。我有一个关于域对象以及如何正确使用它们的问题。有一些具有依赖关系的域对象。一个示例可以是分配了区域实体的公司实体。

ER关系图

我有一个从控制器调用的简单帮助器类,该类的任务是从 URL 地址读取 XML 文件,解析其内容并根据该内容返回新的 Company 对象类。

}

这种方法有效,但我不知道它的设计是对还是错。如果我的 Company 对象只是没有任何依赖关系的普通对象,那么创建新 Company 并为其设置 String 和 Integer 值会很容易。但事实并非如此。

创建新公司时,我还必须创建与现有区域的连接。我通过在我的助手的构造函数中传递一个服务对象来完成它,它从数据库中获取一个现有的区域。

一旦一个新公司被传回控制器,就会为其设置一些其他属性,然后将其保存到数据库中。

我觉得这不是一个很好的方法(将 Service 实例传递给辅助类)。也许在帮助程序中创建某种 DTO 对象,将其返回给控制器,然后将其映射到域对象会更干净。

还是没关系?

0 投票
1 回答
50 浏览

php - 模型和领域对象

我在这里阅读了一篇关于如何创建域对象的文章。作者正在解释如何设计类。简而言之,每个现实世界的实体都有一个类(即 User、Comment、Post 等类)和 getter + setter(检查数据的有效性)。

对于一对多关系,例如与单个帖子相关的所有评论,作者使用数组将 Comment 类的实例存储到 Post 类的实例中。但这是我不明白的:

当我们要插入该新帖子时,相关评论可能实际存在也可能不存在(我的示例没有多大意义,因为您只能评论存在的帖子,但这只是一个示例)。如果添加的评论存在,模型是否应该在添加它们之前检查它们?

此外,如果您知道一篇文章可以解释如何正确编写模型,并且与上述文章的作者使用的哲学相同,那就太好了。