J2EE核心模式 - Front Controller(前端控

2015-08-19  本文已影响1031人  lovePython

Front Controller模式要求在WEB应用系统的前端(Front)设置一个入口控制器(Controller),所有的request请求都被发往该控制器统一处理。Front Controller一般可以用来做一共同处理比如认证,页面导航,Session管理,国际化或本地化处理等。
在开发WEB应用系统(但不拘于WEB应用)时,存在很多不恰当的设计方法,比如让客户端(Client,一般指浏览器)可以直接访问各个视图(view,JSP等)。这样逻辑被分散到各个视图中,从而产生了各种问题:
1,对已有的功能修改困难,可维护性低。假如session管理,一旦session内容需要发生改变,则需要修改所有view中的相关代码。
2,很难增加新的功能,缺乏可扩展性。例如,需要在已有的系统中加入安全控制功能,控制用户对某些页面的访问,因为没有统一的处理入口,需要在所有的view中都加上认证代码。
使用Front Controller,强制分离view的显示逻辑与业务处理逻辑。

上一篇下一篇

猜你喜欢

热点阅读