首页 > 开发 > PHP > 正文

换个角度谈JSP和PHP(摘)

2024-05-04 22:55:36
字体:
来源:转载
供稿:网友
换个角度谈jsp和php(摘)

最近一段时间,有人老是问:jsp是否要代替php? 那我们就来了解一下
什么是jsp? 大家知道jsp是由sun microsystem公司与1999、6月推出的最新
技术,是基于java servlet以及整个java体系的技术,是servlet 2.1
api的扩展。利用这一技术可以建立先进,安全和跨平台的动态网站。

jsp与微软的active server pages 兼容,所不同的是它使用类似html
的标记以及java 程序代码段而不是vbscript.当你所使用的网站服务器没有
提供本地的asp支持,可以考虑使用jsp.

jsp和servlet到底在应用上有什么区别,很多人搞不清楚。简单的说,sun
首先发展出servlet,其功能比较强劲,体系设计也很先进,只是,它输出
html语句还是采用了老的cgi方式,是一句一句输出,所以,编写和修改html
非常不方便。后来,sun推出了类似于asp的同类jsp,把jsp tag镶嵌到html语句
中,这样,就大大和方便了网页的设计和修改。所以说,它和asp,php是完全
一样的嵌入型的脚本语言。

从网络的结构来看,一个网络项目最少分为三层:数据层,逻辑层,用户层。
servlet用来写逻辑层,但用来写用户层就很不方便。jsp则主要是为了方便
写用户层的,当然也可以写逻辑层。现在有好多人,经常会不自觉的把用户层和
逻辑层混在一起。

其实,根据sun自己的推荐,jsp中应该仅仅存放于逻辑层有关的东西,
也就是,只放输出html网页的部分。而所有的计算,分析等,统统放在逻辑层
,应该放在java bean中,通过jsp调用java beans,实现两层的整合。

所以,学了jsp,不会用java bean并进行整合,等于没学。所以jsp在本质
上和php, asp是类似的一个脚本语言。只不过,它是用java写的。

php在用户层上的表现是有目供睹的,现在唯一的问题就是它缺少一个逻辑
层,但这个逻辑层是可以用其它语言来写的,就向com/dcom是用vb,vc写的,
java bean是用java写的,所以,php不一定非要用某个语言写这个组件,
它完全可以调用其它语言写的组件,用来实现比较复杂的逻辑功能。

不知大家注意到没有,微软提出的三层模型是:用户层用asp,asp+,
逻辑层是com/com+,数据层是ado,而sun 提出的三层模型是:用户层用jsp,
逻辑层是java bean,数据层是jdbc,而php呢,没有以上的部分,这是为什么呢?

这就是因为,它不是有某个公司来制定的,因为它是开放源阿。所以,php将来
的发展方向应该是如何做到和用其它组件完美结合的能力,完善与各个数据库
有个统一的接口问题。也就是发挥我们在用户端的优势,结合各种组件和数据库
,从另一方面到达真正的跨平台,高效率,安全等要求。

其实,我们不难发现,sun开发了三类产品, 它们分别是客户端用java applect
,服务器端用servlet, 数据库端用jdbc,但大家也知道,客户端采用applet已经
很少了。说明,applet并不成功。也许将来在带宽无限大的时候,也许会真正
实现它吧。

另外,说些局外的话,如果微软被分拆,操作系统将战火纷飞,那时,想我们
这些软件的开发人员必要找一个通用语言进行开发,到时java会一统天下。而且
从微软分出的应用软件公司将成为java的新领导者。目前的java大头sun和ibm都
死气沉沉,令人失望。希望新公司能注入新活力。不过,这样会影响java的跨
平台,因为要展开java标准大战。

最后,要说的是,jsp并不能完全代替php。 
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表