`

对于ASP.NET与J2EE框架的一点想法

阅读更多
        没有用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的开发当中也能有这样的页面事件处理函数啊!或许这只是一个无稽的想法,但是寻找开发中的平衡点,不正是我们要做的吗?
分享到:
评论

相关推荐

    ASP.NET三层架构

    与ASP相比ASP.NET在Web应用开发上无疑更容易,更有效率。Web开发大部分还是围绕着数据操作,建立数据库存储数据,编写代码访问和修改数据,设计界面采集和呈现数据。走过Asp.net学习入门阶段后,真正开始着手开发一...

    asp.net知识库

    ASP.NET 2.0页面框架的几点新功能 ASP.NET 2.0 中收集的小功能点 asp.net2.0中的webpart使用小记 2.0问题、错误解决办法 ASP.NET 2.0使用Web Part创建应用程序之二(共二) 体验 .net2.0 的优雅(2) -- ASP.net ...

    asp.net mvc框架编写的绩效考评系统(可做毕业设计或课程设计)

    1方向(比如JAVA,ASP.NET) 2类别(比如J2EE,SSH,AJAX。MVC) 3,指标体系(比如JSP,JDBC。AJAX的掌握情况) ③角色 1绩效专员(管理员,做基础数据维护) 2考评对象 3被考评对象 4领导 考评流程: ①考评方案...

    史上最好传智播客就业班.net培训教程60G 不下会后悔

    ASP.Net MVC是微软推出的区别于ASP.Net WebForm的Web开发新技术,由于ASP.Net MVC解决了ASP.Net WebForm的很多缺点,非常适合大型、中型项目的开发,一经推出就受到了.Net开发社区的追捧,很多.Net开发人员的职位...

    Spring.net实战开发

    Spring.NET+NHibnerte+ASP.NET MVC4的组合等同于J2EE下大名鼎鼎的SSH框架技术,是.NET下的企业级Web应用开发开源框架。 Spring.NET Spring.Core 库是框架的基础, 提供依赖注入功能。Spring NET中大多数类库依赖或...

    基于J2EE框架的个人博客系统项目毕业设计论文(源码和论文)

    由于J2EE的开源的框架中提供了MVC模式实现框架Struts、对象关系模型中的Hibernate 的框架及拥有事务管理和依赖注入的Spring。利用现存框架可以更快开发系统。所以选择Java技术作为blog 的开发工具。 为了增加系统的...

    容易理解的多层构架框架(ASP.Net)示例

    微软号称以27倍的速度和1/4的代码量遥遥领先于基于J2EE的PetStore宠物商店, 可是好多朋友看不懂,呵呵, 想学构架分层,看PetShop可能还是有点难度滴哦。。。。 本示例不是要求大家明白其中的优化,旨在让大家明白...

    计算机专业毕业设计选题表230.doc

    " "1 "VB上机计时管理系统(ACCESS数据库) " "2 "学生诚信管理信息系统设计 " "3 "基于ASP.NET的图书网上荐购系统的设计与实现 " "4 "卷烟零售管理系统设计与实现 " "5 "基于J2EE和AOP技术的数字图书馆的研究 ...

    基于Android J2EE 计算机类毕业设计论文毕业设计WORD文档36个合集.zip

    基于ASP.NET技术的WEB网站开发与设计.doc 基于ASP的音乐网站的设计与实现.doc 基于J2EE框架的个人博客系统项目毕业设计论文.doc 基于J2EE的财务管理系统设计与实现.doc 基于S2SH电子商城完成版.doc 基于安卓坦克大战...

    XX系统方案设计.doc

    ASP.NET技术的设计目的是使编写基于WEB的应用程序更加容易的和快捷 的同时,保证这些应用程序能够与各种浏览器和开发工具共同工作。同时,要求该软件 系统能够通过各个单位设置的网关、代理服务器和防火墙等障碍,...

    代码行统计工具V2.0

    代码行统计工具V2.0 <br>可以统计任何文本文件类型,可以自定义要统计的类型,默认...可以查看各类文件占总行数的百分比 +可以直接把文件或者文件夹拖拽到窗口上,然后就可以直接统计 <br>需要.NET2.0 框架

    wicket 开发指南

    这一点和Tapestry,以及.NET 平台上的ASP.NET 极为相似,也怪不得与Tapestry 的作者争论了这么久,毕竟两者的用户群有很多的重复。其实从结构上看来,无论是Tapestry,ASP.Net,Wicket 估计都借鉴了Applet 平台上的...

    《Wicket开发指南一书》PDF版本下载

    这一点和Tapestry,以及.NET平台上的ASP.NET极为相似,也怪不得与Tapestry的作者争论了这么久,毕竟两者的用户群有很多的重复。其实从结构上看来,无论是Tapestry,ASP.Net,Wicket估计都借鉴了Applet平台上的...

    计算机毕业设计论文题目大全.doc

    "论文题目 "开发环境 "数据库 " "基于ASP.NET实现的实验室网络管理系统 "无 "无 " "FTP客户端的设计与实现 "Eclipse " " "Ipv6环境下FTP系统的设计与实现 "Eclipse " " "J2EE 公交查询系统的设计与实现 "Eclipse " ...

    Wicket开发指南

    Wicket 是什么?简单点说,它就是一个基于Java 的Web 开发框架,与Struts, WebWork,Tapestry相类似。其特点在于对Html 和代码进行了有效的分离...如果你不 对微软并不反感,可以把它看作Java 平台上的ASP.NET。

    “桂林高新杯”软件设计大赛.doc

    " " "6、.NET Framework2.0、ADO.NET、ASP.NET、XML、Web " " "Service技术。 " "J2EE "1、JavaBean、Servlet、JNDI、JavaMail、JSP、JDBC、EJB、Stru" " "ts、Hibernate、JTA、JTS、JMS、Spring、Web Service; " ...

    程序开发目前主流开发技术的分析和总结

    程序开发:目前主流开发技术的分析和总结 主流的程序设计语言:C++、... 企业应用程序框架:WindowsDNA(ASP、COM、COM+)、J2EE、.NetFramework  开发工具:VisualBasic、Delphi、VisualC++、C++Builder、VisualC#

    Mindsware动态数据对象平台v0.2版发布

    J2EE平台下面这样的Framework数不胜数,可是.NET平台下的却屈指可数,希望这个 Framework的问世,能够为.NET的普及做出一点贡献,也为大家学习.NET的Programming, Modeling提供一个范例。欢迎志愿者加入我的行列,...

    Mindsware DataObjects & DynamicDataSheet Framework

    J2EE平台下面这样的Framework数不胜数,可是.NET平台下的却屈指可数,希望这个 Framework的问世,能够为.NET的普及做出一点贡献,也为大家学习.NET的Programming, Modeling提供一个范例。欢迎志愿者加入我的行列,...

    JSF2.0快速入门的基本教程.ppt

    JSF将是J2EE5.0中所包含的web开发框架,这应该是第一个成为jcp标准,并且随j2eesdk一起发布的web框架,可以看出sun对它的期望很高。JSF最大的竞争对手是tapestry,是apache的产品,但是apache又弄出了个myfaces,是...

Global site tag (gtag.js) - Google Analytics