1

我不关心在 Struts2 下做一个有用的项目,但也是一个结构良好的项目。我有一个名为Custormer的 bean ,其中有必要的属性及其 getter 和 setter。我想知道我应该在哪里构建Custormer bean 的不同操作,例如SubscribeUpgrade,......它应该在模型中类还是动作类?另外,我不完全了解模型驱动类需要什么。非常感谢你们:)

4

1 回答 1

3

两者都不是,那些可能属于服务类——但从你的描述中无法判断。当用户订阅时实际发生了什么?升级?

动作类本质上应该只是 Web 层和业务层之间的粘合剂、编组数据、处理来自两个层的成功/错误条件等。

模型类就是您业务领域的模型。这些模型的性质在不同领域、设计/架构方法等之间可能存在很大差异。业务功能所在的位置也可能存在很大差异。服务层、DDD 等都可以处理此类功能。

但是,它不应该直接通过操作来实现。相反,动作应该委托给服务层、模型等。换句话说,动作不应该直接更新数据库字段以指示用户已升级。Web 层只是引导站点用户四处走动。

ModelDriven只是一个抽象,它表示不是将动作放在值堆栈的顶部(例如,表单属性将设置在动作属性上),模型的实例将位于堆栈的顶部(例如,表单属性将在模型实例上设置)。

于 2012-07-14T16:38:28.847 回答