JAVA和PHP比较

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/vicky_yaoxj/article/details/6370119
JAVA和PHP比较
关键字: java和php比较 

现在市场上的电子商务软件基本上可归结为两大阵营,即PHP阵营和JAVA阵营。但对接触电子商务不久的用户来说,看到的往往只是它们的表相,只是明显的价格差异,却很难看出它们之间的实际差异。其实, PHP + MYSQL 不值钱不仅仅局限于电子商务软件,而是整体上PHP + MYSQL开发的软件都不如JAVA开发的软件值钱。为什么PHP + MYSQL 的电子商务为什么不值钱呢?首先得明白PHP和JAVA之间的差异才行。
  1、系统的技术架构比较
分层是将系统进行有效组织的方式,分而治之的思想是计算机领域中非常重要的思想。在好的分层思想引导下,便能实现“高内聚、低耦合”,也能将具体的问题 割裂开来,易于控制、易于延展,更易于分配资源。PHP只能实现简单的分布式两层或三层的架构,而JAVA在这方面就十分强大,可以实现多层的网络架构。运用MVC的设计模式,可使电子商务软件具有更加高效、合理的系统架构。技术架构的落后,使运用PHP编写的电子商务软件先天不足,而后天又无法补足其先天上的劣势。使得系统在可拓展性、需求应变性上与JAVA编写的电子商务软件系统的差距越来越大。架构的差距,注定了PHP做的电子商务充其量是个小家碧玉,始终无法和JAVA这种大家闺秀同台竞技。
  2、数据库访问比较
PHP可编译成具有与许多数据库相连接的函数。将自己编写外围的函数去间接存取数据库。通过这样的途径当更换使用的数据库时,可以轻松地修改编码以适应这样的变化。但PHP提供的数据库接口支持彼此不统一,比如对Oracle,MySQL,SQL2000的接口,彼此都不一样。由于PHP对于不同的数据库采用不同的数据库访问接口,所以数据库访问代码的通用性不强。

  3、安全性对比
在JAVA的面前,PHP丢掉了很多的优势。在代码的安全性上尤为突出。PHP的开发程序在别人拿到代码后,可以很容易的进行修改。而JAVA开发的程序由于无法看到完整的源代码,只能看到一些编译好的类文件.class,所以安全性较高。加之系统架构的优势,在安全性上PHP和JAVA是相去甚远。如果非要将PHP和JAVA在安全性上做个比较的话,同一个小偷光顾PHP那是随便拿来随便改,想拿什么拿什么,拿的高兴还能大笔一辉某某到此一游。而光顾JAVA的时候,便会发现警察把守,内设自动报警装置,即便突破重重阻扰后进入居室。那值钱的东西都放在加密后的保险柜中,只能望洋兴叹、铩羽而归。
  4、前瞻性和拓展性
从整体来说,PHP适用于中小型系统,而JAVA适用于大型系统。PHP能够将单一的事件做好,但却不适合完成集成度较高的多项并发事件。为什么说PHP适合中小型系统而不适合做大系统呢?
首先,PHP缺乏多层结构支持。而对于大型的系统负荷站点,只能采用分布计算。将数据库、应用逻辑层和表示逻辑层彼此分开,并将同层的根据流量分开,组成二维数组。而PHP恰恰缺乏这种支持。
其次,PHP提供的数据库接口不统一,要将多个不同的数据库数据统一需要花费很大的力气。而JAVA则没有这种缺陷,可通过SUN JAVA的JAVA Class和EJB获得规模支持,通过EJB/CORBA以及众多厂商的Application Server获得结构支持。如ProBIZ的Merchant one电子商务软件产品系列。
如果将PHP比作将才,具备独挡一方的能力。那么JAVA便是帅才,具有较好的前瞻性和拓展性,整体布局和协同能力强。能够指挥千军万马,最后逐鹿中原。
展开阅读全文

PHPJAVA在WEB开发上的比较

11-25

比较PHP和JSP这两个Web开发技术,在目前的情况是其实是比较PHP和 java 的Web开发。rnrn 转载:www.2bysj.cnrnrn 以下是我就几个主要方面进行的比较:rnrn rnrn 一、 语言比较rnrn rnrn PHP是解释执行的服务器脚本语言,首先php有简单容易上手的特点。语法和c语言比较象,所以学过c语言的程序员可以很快的熟悉php的开发。而java需要先学好java的语法和熟悉一些核心的类库,懂得面向对象的程序设计方法。所以java不如php好学。rnrn rnrn Java首先要编译成字节码.class文件,然后在java虚拟机上解释执行。Java的Web开发首先最容易想到的就是JSP(现在已经到JSP2.0),原来的java的Web开发都是用servlet来实现的,用servlet来开发需要程序员在java的源文件中嵌入大量的html代码。所以后来就出现了JSP,JSP可以方便的嵌入到html文件当中,其实jsp文件在服务器上执行的时候首先会被应用服务器转换成servlet,然后再编译执行。Jsp可以通过servlet和JavaBean的支持产生强大的功能。rnrn rnrn JavaBean 是一种可复用的、跨平台的软件组件。使用javabean可以方便的实现java代码和html的分离,能够增强系统的功能和软件的复用性。 Java的Web开发属于SUN公司定义的J2EE其中的规范。而且在J2EE中包括了java的Web开发的所有方面,如:JSP、Servlet、JDBC、JNDI、JAVABEAN、EJB等等。J2EE就特别适合于做大型的企业级的应用。rnrn rnrn 二、数据库访问比较rnrn rnrn Java通过JDBC来访问数据库,通过不同的数据库厂商提供的数据库驱动方便地访问数据库。访问数据库的接口比较统一。 PHP对于不同的数据库采用不同的数据库访问接口,所以数据库访问代码的通用性不强。例如:用 java 开发的Web应用从MySQL数据库转到Oracle数据库只需要做很少的修改。而PHP则需要做大量的修改工作。rnrn rnrn 三、系统设计架构比较rnrn rnrn 采用Java的Web开发技术,需要使用的是面向对象的系统设计方法,而PHP还是采用面向过程的开发方法。所以用Java进行开发前期需要做大量的系统分析和设计的工作。rnrn rnrn 四、跨平台性rnrn rnrn Java和PHP都有很好的跨平台的特性。几乎都可以在不作任何修改的情况下运行在Linux或者Windows等不同的操作系统上。rnrn rnrn 五、 开发成本比较 ]rnrn rnrn PHP最经典的组合就是:PHP + MySQL + Apache。非常适合开发中小型的Web应用,开发的速度比较快。而且所有的软件都是开源免费的,可以减少投入。 java 的Web应用服务器有免费Tomcat、JBoss等,如果需要更好的商业化的服务有:Web Sphere和 Web logic。rnrn rnrn 六、 分布式多层架构比较rnrn rnrn PHP只能实现简单的分布式两层或三层的架构,而JAVA在这方面就比较强大,可以实现多层的网络架构。数据库层(持久化层)、应用(业务)逻辑层、表示逻辑层彼此分开,而且现在不同的层都已经有一些成熟的开发框架的支持。例如Struts就是利用java的Web开发技术实现了MVC的设计模式,而在业务逻辑层也有Spring框架,数据库持久化层有Hibernate等框架。这些框架可以方便开发者高效、合理、科学得架构多层的商业应用。rnrn rnrn 下面简要的说一下Struts,它实质上是在JSP Model2的基础上实现的一个MVC(Model、View、Controler)框架。JSP Model2体系结构是一种联合使用JSP 与Servlet 来提供动态内容的方法。在Struts框架中,模型由实现业务逻辑的JavaBean或EJB组件构成,控制器由Servlet实现的,视图由一组JSP文件组成。采用Struts可以明确角色的定义和开发者与网页设计者的分工。而且项目越复杂,其优势越明显。rnrn rnrn 七、 源代码安全rnrn rnrn PHP开发的程序的源代码都是公开的,他人拿到php开发的程序后都可以进行修改。 Java开发的程序,最后用户拿到的是只是一些编译好的class类,无法看到完整的源代码,安全性高。 八、性能比较有人做过试验,对这两种种语言分别做回圈性能测试及存取Oracle数据库测试。rnrn rnrn 在循环性能测试中,JSP只用了令人吃惊的四秒钟就结束了20000*20000的回圈。而PHP测试的是2000*2000循环(少一个数量级),却分别用了63秒。数据库测试中,二者分别对 Oracle 8 进行 1000 次 Insert,Update,Select和Delete: JSP 需要 13 秒,PHP 需要 69 秒。 rnrn rnrn 项目 PHP JAVArnrn可复用性 低 高rnrn开发速度 快 慢rnrn易维护性差优 可移植性 优-Linux Windows、Unixrnrn安全性 低 高rnrn开发费用 低 高rnrn多层架构 差 优rnrn数据库访问 接口不统一 接口统一rnrn可扩展性 差 优rnrn面向对象 差 优rnrn rnrn 综上所述,我个人认为,PHP适合于快速开发,中小型应用系统,开发成本低,能够对变动的需求作出快速的反应。而Java适合于开发大型的应用系统,应用的前景比较广阔,系统易维护、可复用性较好。还有,同样功能的系统用 java 开发的系统要比PHP开发的系统的价格要高。rn 论坛

没有更多推荐了,返回首页