没有用ASP.NET来开发Web Application也有一段时间了,虽然她的轮廓在我的记忆中已经开始模糊,但是她的美丽还是深深烙在我的心中,不曾磨掉。
让我再一次想念ASP.NET源于在Web Application要实现的一个功能:从数据库中筛选出一些数据,并显示出来。聪明的您或许会觉得这个功能很简单,是的,真的很简单,不管是ASP.NET还是使用JSP+Servlet来做。但是这个处理逻辑应该放在什么地方呢?
在ASP.NET中,要实现这个小小的功能,不管是使用DataGrid也好,DataList也好,或者Repeater也好,都是在Page_Load事件中将DataSource绑定去实现,而在页面上通过控件将相应的数据显示出来。我们可以看到逻辑处理是放在一个Page_Load事件中的;
而使用J2EE各种各样的框架,通常都会有一个Servlet作为request的Dispatcher,当这个Servlet接收到某种pattern的请求后(如WAF中的.do,WebWork中的则是.action),将会通过读取配置文件得到处理这个request的class,相应的逻辑处理完之后,就会将得到的结果(这个例子中,就会得到一个Collection)放到request当中,最后再由作为Dispatcher的Servlet将request推到相应的View中。而在View(将会是JSP)中通过标签库的Iterator标签获得Collection,并显示之。从以上的分析,我们也可以发现,逻辑处理是放在了处理request的class中。
综上所述,ASP.NET作为一个框架所关注的是页面本身以及页面包含的控件,从ASP.NET支持的方法就可以看出来了,如Page_Render,Page_Load, Page_Unload,OnChange,OnClick等等,却没有将Request和Response做为重要的对象来对待,这样的一个关注点使得ASP.NET的开发变得十分的简便。但是,这样的做法也并非十全十美,象Page之间的关系,在整个Application当中,是没有地方进行描述的;而J2EE框架关注的是Request,Response,Parameter这些隐含的对象,对于页面控件触发的事件则没有做相应的重视,这样的一个关注点就使得J2EE的框架在处理业务逻辑上面显得十分的灵活,因为我们细分了用户的每一个请求,而每一个请求在配置文件中都有清楚的描述,整体脉络是很清晰的。但是厚此薄彼的做法也造成了页面开发的低效并增加了开发的难度。
再次回到前文提出的那个功能,在ASP.NET当中的具体实现我就不用多说了,很简单,简单得让我眼馋。而在J2EE的框架当中,如果对数据浏览的请求是由用户主动发出的话,实现起来也是非常自然的。但是如果这些数据需要显示在首页,我该怎么办呢?我想我能做的就是在首页显示之前去定义一个.action或者.do,让用户一进入网站的时候,并不是直接去访问首页,而是访问在首页之前的.action或者.do。然后由相应的class处理完数据的查询之后,再将request分发(Dispatch)到首页去。这样是不是很麻烦呢?除此之外的办法就是在页面上写Java代码,这样也就破坏View与Control分离的原则了。这个时候,我多么希望在J2EE的开发当中也能有这样的页面事件处理函数啊!或许这只是一个无稽的想法,但是寻找开发中的平衡点,不正是我们要做的吗?
分享到:
相关推荐
7. **Web API和ASP.NET Core**: .NET提供了Web API框架,允许开发者构建面向HTTP的服务,这些服务可以被J2EE应用轻松调用。 8. **Bridge Libraries**: 如JNBridge,这类工具可以简化.NET和J2EE应用之间的互操作性,...
【J2EE与.NET技术架构比较】 J2EE(Java 2 Platform, Enterprise Edition)和.NET是两大主流的企业级开发平台,两者各有特点,适用于不同的应用场景。本文将从多个角度对比J2EE与.NET,帮助开发者理解它们的区别,...
《.Net VS J2EE:两大企业级开发框架的比较与选择》 在信息技术领域,.Net 和 J2EE 是两个备受关注的企业级开发框架,它们分别代表了微软和 Java 社区对于构建大型分布式应用的解决方案。本文将对这两个框架进行...
4. **ASP.NET**:ASP.NET是.NET平台的一部分,用于构建动态网站,它允许将页面编译为IL代码,提高了性能。 5. **Win Forms和Web Forms**:这两者是.NET的用户界面框架,分别针对桌面应用和Web应用,为Visual Studio...
2. **表示层技术**:两者都有各自的网页呈现技术,如.NET的ASP.NET和J2EE的Servlets、JSP。 3. **高可用性和负载平衡**:两者都提供了高可用性和负载平衡的解决方案,例如.NET的NLBS和ACS,J2EE则通常依赖于特定的...
与ASP相比ASP.NET在Web应用开发上无疑更容易,更有效率。Web开发大部分还是围绕着数据操作,建立数据库存储数据,编写代码访问和修改数据,设计界面采集和呈现数据。走过Asp.net学习入门阶段后,真正开始着手开发一...
《ASP.NET.Data.Presentation.Controls.Essentials》一书由Joydip Kanjilal撰写,深入探讨了ASP.NET中用于数据展示与管理的标准服务器控件。本书由Packt Publishing于2007年出版,版权受法律保护,任何未经允许的...
ASP.NET 2.0是微软推出的Web应用程序框架,它基于.NET Framework,用于构建动态网站、Web应用程序和Web服务。此框架极大地简化了Web开发过程,提供了丰富的控件库、数据绑定机制以及内置的安全性功能。《ASP.NET 2.0...
《专业ASP.NET 3.5服务器控件与AJAX组件》是Rob Cameron和Dale Michalk两位专家共同编写的...同时,通过比较分析ASP.NET与Java/J2EE,本书也为开发者提供了更广阔的视角,帮助他们更好地理解和选择适合项目的技术栈。
本书《使用ASP.NET 3.5构建Web 2.0门户》由Omar AL Zabir撰写,深入探讨了如何利用ASP.NET 3.5框架来构建功能强大且性能卓越的Web 2.0应用。书中不仅涵盖了设计目标、架构规划,还详细介绍了实施过程中的许多细节和...
- **Java体系**:J2EE框架 + 任何其它平台。 #### ASP.NET的发展历程 自1994年ASP技术诞生以来,经历了XSP、ASP+、ASP.NET等多个版本的迭代,至2002年的ASP.NET x.0,已成为成熟的Web开发框架。 #### ASP.NET概述...
本规范主要针对ASP.NET平台上的C#开发,同时也涵盖了与AJAX、J2EE、Java相关的最佳实践。 1. **编写目的** 开发规范的主要目标是为项目开发提供一致性和可维护性的基础。遵循规范可以降低代码理解难度,减少错误,...
【Flex与ASP.NET交互】指的是在开发Web应用时,使用Adobe Flex前端技术和Microsoft ASP.NET后端技术进行数据通信的方式。Flex是一种用于构建富互联网应用程序(RIA)的开发框架,而ASP.NET是.NET Framework的一部分...
1方向(比如JAVA,ASP.NET) 2类别(比如J2EE,SSH,AJAX。MVC) 3,指标体系(比如JSP,JDBC。AJAX的掌握情况) ③角色 1绩效专员(管理员,做基础数据维护) 2考评对象 3被考评对象 4领导 考评流程: ①考评方案...
- **ASP.NET**:用于开发Web应用。 - **ADO.NET**:用于数据访问。 - **Windows Communication Foundation (WCF)**:用于创建服务通信应用程序。 .NET平台的优势在于其与Windows系统的高度集成,以及强大的开发工具...
ASP.NET 2.0是微软推出的用于构建动态网站和Web应用程序的框架,它极大地简化了Web开发过程。在这个网络开发技术的主题中,我们将深入探讨以下几个关键知识点: **第1章 走进ASP.NET 2.0** 在这一章,我们将介绍ASP...
ASP.NET 性能与缓存是开发者关注的重要领域,尤其对于构建高效、高并发的Web应用程序至关重要。在ASP.NET框架中,性能优化和缓存管理是确保系统稳定性和响应速度的关键技术。 首先,ASP.NET相较于其他平台如J2EE,...
在IT领域,尤其是在Web开发与服务器管理中,处理ASP.NET应用程序在IIS(Internet Information Services)上遇到的权限问题是一项常见的挑战。当遇到“解决ASP.NET的进程帐户没有访问IIS的权限”这一问题时,它通常指向...
ASP.NET是微软公司推出的一种用于构建动态网站、Web应用程序和Web服务的开发框架。它基于.NET Framework,提供了丰富的服务器控件、内置的安全性、可扩展性和可配置性,使得开发者能够高效地创建功能强大的Web应用...