理想情况下,ASP.NET和JSF web页面应该包含很少的代码而且只是包含必要的HTML和标签来生成页面的组件,一个页面的事件逻辑驻留于代码文件中。在ASP.NET中,每个web页面与一个相应的子类化页面ASP.NET类的.NET类文件相关联。有时,这些文件被引用为”code-behind”文件。在JSF中,每个web页面都有一个相关联的支持JavaBean类。ASP.NET的code-behind文件和JSF支持bean都包含页面属性(例如标签和输入域)。JSF bean是用Java编写的,而ASP.NET code-behind文件可以使用任何.NET语言(例如VB.NET或C#)编写。ASP.NET code-behind类负责处理相关联的页面事件。这个处理一个组件事件的Java类不必是页面的支持JavaBean。过一会我们再讨论它。值得注意的是,在ASP.NET中分离的code-behind文件可能是不必要的-有可能在页面本身的代码中实现事件处理。然而,一般来说,这被认为是一种不好的编码实践,因为这样以来将会导致混淆HTML和代码问题。
下面是我们的示例ASP.NET和JSF应用程序的两幅快照。由于两种组件的内在特性以及我也没有对之应用匹配的视觉式样,所以它们看起来略微有些不同。在两个页面中,显示一个会议房间表格,还有进一步了解相应房间的View按钮和预订该房间的Reserve按钮。
\n
ASP.NET程序快照
JSF程序快照\n