当前页面: 开发资料首页 → JSP 专题 → JSP设计模式基础:View Helper模式
摘要: JSP设计模式基础:View Helper模式
这篇从《JSP设计模式基础》(Apress, 2004)摘录的文章,描述了View Helper模式,并且向我们展示了如何创建一些能增加到你自己的工具箱的有用的View Helper(2,300 字, November 1, 2004) 。
View Helper模式告诉我们,我们能使用Helpers来使得在一个应用中,Model数据能够适应表现层的需要。典型的,表现层一般都包括一些JSP页面。这些页面由一些用来给用户显示内容的HTML和图片组成。然而,当这些页面需要显示一些存储在Model上的动态信息的时候,这里有一个问题出现了。你希望能够避免在页面上为了显示那些动态数据而使用嵌入的Java代码,你就得使用一些Helper来帮助你实现上述的功能。要抛弃那些在控制器Servlet里将一些Model数据作为一个属性存储在request里面的想法。在一个页面里,你要获取Model数据,有三种选择。你可以以JSP脚本的形式嵌入Java代码;你也可以使用EL;或者你也可以使用一个Helper帮你取得数据。根据将表现层和商业逻辑分离的原则,使用一些Helper来帮助我们使得数据适应表现层的要求比将表现层代码和Java代码混在一起有意义(参见图1)。图1你可以设想,通过使用简单易用的Helper代替Java代码,页面设计人员开发表现层变得简单多了。当然,前提是开发人员发布了一个Helper目录并且详细描述了这些Helper怎么使用;因为这样开发人员才会使用那些Helper。然而,如果在开发人员能够提供使Helper运行起来的Model数据之前,页面设计人员就已经设计了页面,就又有新的问题。解决这个问题的一个有用的技巧是在Helper里设置一些假数据以便在没有Model数据的时候显示;还有一个可以替代的方法是在Model里设置一些能使Helper运行的假数据。无论哪种方法,页面设计人员都不会在等待开发人员的时候闲起来。使用Helper有如下优点:。表现层的组件是标准化的,为应用提供了统一的look和feel。Java代码从页面设计人员那里被抽离,使得他们有了易用的Helper来访问Model。如果Model还不存在的话,你可以创建一些Helper来显示一些假数据。这样,不管应用程序的准备如何,页面设计人员都可以进行他们的设计工作。。Helper作为业务数据和表现层的中介,它可以把两者清晰的分离开来。 实现JavaBeans Helper的策略在为JSP页面开发Helper的时候,你有两种选择。你可以使用JavaBeans或者定制标签,具体选择哪一种取决于你在Helper中所要处理的数据。一般来说,JavaBeans适合你处理单个的数据,而定制标签却更适合使用在那些处理一系列数据的场合。然而,需要着重指出的是,你可以用任意一种方法来处理两种类型的数据。实现View Helper模式的策略你可以在一个JSP页面里用JavaBeans来实现Helper。当处理和格式化单一的文本数据时,JavaBeans模式的Helper非常简单易用。那些内置的JSP标签会让你非常简单和直观的使用JavaBeans。对JavaBeans的使用包括简单的声明,后面就可以引用该给定的标签了,就像下面那样:<%-- Declare bean --%>
↑返回目录
前一篇: 解析Servlet 2.5的新特征
后一篇: JSP编程进度条设计实例