所以问题。我们使用service to worker模式,现在正在寻找一种合适的模式来将数据从控制器传输到视图。任何帮助表示赞赏。
不幸的是我最初无法附上图表(这是一个很酷的网站,不是吗),因为我没有声望10并且感谢现在的人们
注释:TemplateEngine是jsp模板引擎的替代品。
所以我会尝试通过文字解释。
类:FrontController,Controller,View,Action,Jsp文件,EJB,Entity(Anemic Model)。所以FrontController路由到Controller并按顺序调用Controller的两个方法。 Controller只有两个公共方法processAction和processView。 ProcessAction调用Action(命令模式),所以
FronController调用Controller.processAction() - > Action - > EJB - >获取实体。
所以这里的FrontController必须调用Controller的第二种方法
FronController调用Controller.processView() - > View - >模板,jsp,助手等(此时我们需要在控制器中获得的数据)
EDITED: Controller.ProcessAction和Action.execute具有相同的签名:( HttpServletRequest请求,HttpServletResponse响应)。
请求/响应对象(上下文对象)怎么样?我已经阅读了核心j2ee模式,并感到惊讶。据我所知,这个对象从请求中获取数据,甚至进行验证。它的主要目标是作为工具处理数据,消除不同协议(html,xml,json)的依赖性。我感到惊讶的原因有两个:
所以,我对其他人的意见很感兴趣。
答案 0 :(得分:0)
我认为你可以在一个控制器中使用GetData(),在TemplateEngine层中组合GetData()。或者,另一种方法是添加一层服务层,以检索所有数据,控制器将组合服务层的所有GetData()函数。
谢谢,