0

我不确定在这个以 struts 2 作为我的 MVC 的 3 层架构中为模型使用什么类。

用例:检索具有给定名称的目的地(城市)。

建筑学:Struts 2 MVC (Action) -> Service -> DestinationDAO

Struts 2:(View <---> Action并且这个动作调用了服务层)

DestinationDAO 使用休眠并具有getDestination(String name)从数据库中检索目的地的功能。

我的问题是:动作类需要有一个属性,我可以用它来用 jsp 显示目的地信息。我应该使用我的目的地 POJO(我与休眠一起使用)还是应该是不同的对象?

我将不胜感激有关此主题的任何建议/链接。

4

1 回答 1

1

虽然您可以使用您的目标 POJO 作为您的视图的 DO,但我不会推荐这种方法,有时它会产生难以调试的不良行为。其中一个用例是在某些情况下自动触发 Hibernate 查询在模型(POJO)中进行的更改。

使用渲染视图所需的属性创建一组 DTO,并将这些 DTO 用作 MVC (Struts2) 的模型对象。在调用服务层时,您可以将 DTO 中的值复制到 POJO,这将使层更加解耦并且易于更改。

于 2012-02-25T13:14:14.927 回答