当ASP.NET撞上JSF之框架比较

asp.net|js|比较

  使用经典的ASP或JSP技术构建应用程序经常意味着与HTML标注混合编码。然而,在创建这些技术的初期,与其以前使用的方法相比,这些平台为构建web应用程序提供更多的优势。JSP和ASP都提供了相似的对象模型,例如在JSP和ASP应用程序中都可以使用包括Request,Response和Session等对象。现在,在隐蔽处理HTTP协议的无状态特征所带来的复杂性方面还没有出现真正的软件尝试。

  ASP.NET和JSF框架都是基于组件和事件驱动的。也就是说,在一个表单上的组件通过激活应用程序事件来响应用户行动。这些事件为开发者编写代码从而实现必要的逻辑提供了机会。这与JSP和ASP基于“请求驱动”的开发具有很大的不同。其目的是,创建一种更直观的编程模型—类似于构建一个Visual Basic或Java Swing桌面应用程序。其实,JSF和ASP.NET web页面就是一个组件的集合。每个框架都提供了一套标准的组件,并且现在市场上已有大量的个人和开源以及商业组织来提供各种定制组件(在ASP.NET中,称为“控件”)。最近,微软发行了ASP.NET 2.0,与其前面的版本相比,它又添加了更多的组件。不象ASP.NET仅为一家供应商所拥有,JSF是一种标准的规范—它是经许多家J2EE供应商共同开发而成的。除了由Sun所提供的参考实现和许多供应商已经添加了他们自己的组件库之外,还有大量的其它实现。JSF是一种比ASP.NET更新的技术,虽然在目前的组件市场上落后一些,但是现在的JSF组件市场份额正在不断增长。

  尽管可以使用简单的文本编辑器来构建ASP.NET和JSF应用程序,但是使用IDE更好一些。因此,当构建ASP.NET或JSF应用程序时选择良好的工具是很关键的。一些优秀的IDE,例如微软的Visual Studio.NET或Sun Java Studio Creator允许你把组件从组件面板拖动到页面上并通过使用属性编辑器来定制它们的行为和外观(参考下图)。最近,随着.NET 2.0的引入,微软宣布了Visual Studio.NET的一个免费的快递版本,它可以兼容于其商业版本。不过,Sun Java Studio Creator也是一个免费的工具。在本文中,我将既使用Visual Studio.NET Express Edition也使用Sun的Java Studio Creator。



Visual Studio/Java Studio Creator组件面板

  从现在开始,我们将着手构建一个简单应用程序—雇员可以使用之来预订会议房间。这个程序尽管很简单但却提供了足够的特征来实现本文的演示目的。当我们构建该应用程序时,我们将一并讨论一下这两个框架中的核心概念。在本文中的两种示例应用程序中,它们都使用相同的包含两个数据库表(conference_rooms和room_reservations)的MySql数据库。这些表中包含了一些示例数据。详细的SQL请见本文源码中的install_tables.sql文件。

时间: 2024-08-03 18:31:34

当ASP.NET撞上JSF之框架比较的相关文章

当ASP.NET撞上JSF之构建应用程序的异同

asp.net|js|程序 理想情况下,ASP.NET和JSF web页面应该包含很少的代码而且只是包含必要的HTML和标签来生成页面的组件,一个页面的事件逻辑驻留于代码文件中.在ASP.NET中,每个web页面与一个相应的子类化页面ASP.NET类的.NET类文件相关联.有时,这些文件被引用为"code-behind"文件.在JSF中,每个web页面都有一个相关联的支持JavaBean类.ASP.NET的code-behind文件和JSF支持bean都包含页面属性(例如标签和输入域)

当ASP.NET撞上JSF之校验输入方式的差异

asp.net|js 在大多数应用程序中,必须允许用户把数据输入到系统中,因此,校验要求几乎存在于所有应用程序中.在本文中,这两个示例应用程序显示一个可用房间列表并且允许用户显示任何与该房间相关的预订信息.对于每个房间都有一个相应的链接-直接展示给用户一个在线表单-你可以立即进行新的预订.下面显示出这两个应用程序的预订表单屏幕快照. ASP.NET预订表单JSF预订表单 在这些表单中,用户首先输入预订的个人或团体的名称.然后,用户输入一个新预订的开始和结束时间.作为开发者,你必须考虑一个用户所有

当ASP.NET撞上JSF之应用程序的国际化

asp.net|js|程序 国际化,是指在你的应用程序中支持多种语言和文化.这包括提供本地化的文本消息和格式(例如日期),以便在世界不同地方的用户能够以一种他们理解的格式和语言来观看你的web页面.随着全球web的不断增长,这种类型的功能也变得日益重要.我们将快速地看一下每个框架如何允许你外在化页面文本(例如域标签)以提供不同的本地化支持. 支持不同的本地化的JSF应用程序与其它J2EE应用程序实现方式差不多使用一样的实现方式-通过把本地文本数据存储到一个资源包属性文件中.你将对每一种本地化支持

当ASP.NET撞上JSF之模板化、式样和主题

asp.net|js|模板 模板化 把一个web页面中的跨越多个不同页面的通用部分独立出来经常是很有好处的,这样就可以实现内容重用和不会出现标注的重复问题.应用程序页眉和页脚就是跨越你的网站重用页面部分的最好实例.模板化鼓励你定义一种"模板"页面-你使用它来仅代替在页面间不断改变的内容,而让其它的内容保持相同.JSF没有提供的内置的模板化支持.在J2EE web应用程序开发中使用的一种流行模板是Struts Tiles工程.Tiles也可以与JSF一起使用.Java Studio Cr

当ASP.NET撞上JSF之应用程序安全性

asp.net|js|安全|安全性|程序 JSF规范本身并没有强调安全性问题.而是,当你创建安全的J2EE应用程序时,相应的安全机制也一起应用到JSF中.ASP.NET也提供许多安全选项,而且很多ASP.NET安全性被绑定到Windows平台(你可能已经猜出).例如,一个运行于企业内网上的ASP.NET应用程序能够容易地根据他们的Windows域登录信息认证用户.在ASP.NET 2.0有一些新的登录控件来支持你快速地添加登录功能(如为你的应用程序增加登录表单). 错误处理与调试 需要再次指出,

Asp.net文件上传操作

asp.net|上传 在ASP里要上传一个文件是很麻烦的事,需要稻香老农之类的组件的支持.在ASP.Net事情就变得简单了许多.如下面上传图片的例子.首先申明使用命名空间.using System.IO;在设计页面拖进一个input(File)控件,并把它作为服务器控件运行.其ID为myFile:然后拖进一个button,给button的单击时间添加如下代码: protected void submit_Click(object sender, EventArgs e)    {        

asp 无刷新上传带预览程序代码

首先我是使用艾恩ASP无组件上传类的iframe.直接在框架里面上传后赋值给父窗口的input.下面就是index.php的代码了.但是这个这能上传一张图片不能批量上传图片!    单文件上传<br /> <iframe frameborder="0" height="60" width="400" name="upload" src="upload.asp"></iframe

你以为的ASP.NET文件上传大小限制是你以为的吗

原文:你以为的ASP.NET文件上传大小限制是你以为的吗 我们以为的文件大小限制 我们大家都知道ASP.NET为我们提供了文件上传服务器控件FileUpload,默认情况下可上传的最大文件为4M,如果要改变可上传文件大小限制,那么我们可以在web.config中的httpRuntime元素中添加maxRequestLength属性设置大小,同时为了支持大文件上传超时可以添加executionTimeout属性设置超时时间.网上有很多这样的例子,但实际情况是否是这样吗? <httpRuntime

ASP实现文件上传的方法_应用技巧

一.基于ASP的文件上传实现原理分析 基本原理是:采用ADO Stream对象的BinaryRead方法将FORM中的所有数据读出,从中截取出所需的文件数据,以二进制文件方式存盘. 下面是上传文件页面的一个例子(upload.htm): <html> <body> <form name="Upload" Method="Post" Enctype="multipart/form-data" Action="