- 论坛徽章:
- 0
|
最初,j2ee和web沾边的只有jsp,servlet这么两块,jsp大致是模拟php,asp, servlet大概是模拟cgi.是靠ejb,jta这些东西鼓吹其企业级别开发的优越特性的,你说你会jsp都不好意思说你会java。相比较而言,由于java语法简单(比较起c),jvm健壮性好(比起php),所以开始有了噱头。当时的代表作是petstore,前端是jsp+servlet,后端是ejb,中间有个体现了各种模式的控制层。甚至出现了一些狂热者要拿这个和.net比较性能(.net那个好像叫pet shop)
后来由于大量的scriptlet的弊病(面条式的jsp页面),出现了struts这样的开源框架,目的之一,就是用成型的框架,标准的少量的Tag规范化web开发(规范的结果是页面清晰,程序员出错的几率小),struts大获成功以后,大多数java程序员(或者被称为高手)的那些人,投入到web开发研究这块,于是将整个web流程不断细化,改善,规范化。包括velocity,tapstry,freemaker等等,各有市场吧(虽然都比struts小),他们的目标只有一个:便利化(规程化)web开发。集大成者是spring framework,概念清晰,责权明确。
spring framework却没有一统江湖,是因为之前出现了一个webwork,因为这个webwork集中了很多“先进”的技术:aop,ognl,流程配置化等。(aop是后来spring兴起的,不过webwork的拦截器有aop的影子)
后来webwork没落,spring framework也没有成为标准,反倒有这样那样缺陷的 struts 1.x依然在用户中大有市场。
当时比较流行的大牛在bbs上的回复是这样的:你怎么还在用老土的struts,我都在用xx,yy,比struts1.x先进多了,xxx好,xxxx好。
最终的结果是:大大小小的框架都人气渐衰,唯有struts居然和webwork融合,成了struts2(依然是struts的名字而不是webwork,可以看出一点意味吧)。
java的其它方面基本没有什么发展.
这里面有两个开源框架不得不提:一个是spring,一个是hibernate,前者将控制层可配置化,后者是数据层OO化,加上便利的plugin的出现(这里有点疑问的是:这种plugin到底是轻量化还是重量化),这样,某些应用,或者说占比例不在少数的应用,可以通过Xdoclt(annotation)这样的方式无编码化自动生成。
当时某大牛的代表言论是:我快速(一星期)自动化给你生成一个(web)项目,然后改吧改吧三年,三年后,重新来个第二版。
很符合流行的敏捷开发的思路。很符合。
发展到今天, java除了j2me那边,j2ee已经沦为ssh(struts,spring,hibernate)这样的东西,难听点,经过若干古今中外大牛的通力合作,终于让j2ee回归了做网站的真面目。不朽的功勋啊.
java开发(包括erp,web网站)的优势在哪:简单,有成型的方案,就是一个不入流的程序员,也能很快开发一个不错的网站出来.java天生的结构化良好的优点在软件工程中是很占优势的.(软件工程的观点,开发,维护的成本比效率要重要得多).
ajax和java不沾边,php如果能套脚本,也能使用ajax的.(本人php一窍不通).但是既然j2ee就是做网站的,所以ajax也就是j2ee叫得凶,一般介绍ajax的也大多后台用j2ee来实现.
随便写写,但搏一笑. |
|