`
z75148885
  • 浏览: 191340 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

选择java还是php?《Java和PHP的web开发技术比较》

阅读更多

我们该如何选择?java还是php?《Java和PHP的web开发技术比较》


比较PHP和JSP这两个web开发技术,在目前的情况是其实是比较PHP和Java的Web开发。以下是我就几个主要方面进行的比较:

  一、 语言比较

  Php是解释执行的服务器脚本语言,首先php有简单容易上手的特点。语法和c语言比较象,所以学过c语言的程序员可以很快的熟悉php的开发。而java需要先学好java的语法和熟悉一些核心的类库,懂得面向对象的程序设计方法。所以java不如php好学。

  Java首先要编译成字节码.class文件,然后在java虚拟机上解释执行。Java的web开发首先最容易想到的就是JSP(现在已经到JSP2.0),原来的java的web开发都是用servlet来实现的,用servlet来开发需要程序员在java的源文件中嵌入大量的html代码。所以后来就出现了JSP,JSP可以方便的嵌入到html文件当中,其实jsp文件在服务器上执行的时候首先会被应用服务器转换成servlet,然后再编译执行。Jsp可以通过servlet和JavaBean的支持产生强大的功能。JavaBean 是一种可复用的、跨平台的软件组件。使用javabean可以方便的实现java代码和html的分离,能够增强系统的功能和软件的复用性。

  Java的web开发属于SUN公司定义的J2EE其中的规范。而且在J2EE中包括了java的web开发的所有方面,如:JSP、Servlet、JDBC、JNDI、JAVABEAN、EJB等等。J2EE就特别适合于做大型的企业级的应用。

  二、 数据库访问比较

  Java通过JDBC来访问数据库,通过不同的数据库厂商提供的数据库驱动方便地访问数据库。访问数据库的接口比较统一。

  PHP对于不同的数据库采用不同的数据库访问接口,所以数据库访问代码的通用性不强。例如:用Java开发的web应用从MySQL数据库转到Oracle数据库只需要做很少的修改。而PHP则需要做大量的修改工作。

  三、 系统设计架构比较

  采用Java的web开发技术,需要使用的是面向对象的系统设计方法,而PHP还是采用面向过程的开发方法。所以用Java进行开发前期需要做大量的系统分析和设计的工作。

  四、 跨平台性

  Java和PHP都有很好的跨平台的特性。几乎都可以在不作任何修改的情况下运行在Linux或者Windows等不同的操作系统上。

  五、 开发成本比较

  PHP最经典的组合就是:PHP + MySQL + Apache。非常适合开发中小型的web应用,开发的速度比较快。而且所有的软件都是开源免费的,可以减少投入。

  Java的web应用服务器有免费Tomcat、JBoss等,如果需要更好的商业化的服务有:Web Sphere和 Web logic。

  六、 分布式多层架构比较

  PHP只能实现简单的分布式两层或三层的架构,而JAVA在这方面就比较强大,可以实现多层的网络架构。数据库层(持久化层)、应用(业务)逻辑层、表示逻辑层彼此分开,而且现在不同的层都已经有一些成熟的开发框架的支持。例如Struts就是利用java的web开发技术实现了MVC的设计模式,而在业务逻辑层也有Spring框架,数据库持久化层有Hibernate等框架。这些框架可以方便开发者高效、合理、科学得架构多层的商业应用。

  下面简要的说一下Struts,它实质上是在JSP Model2的基础上实现的一个MVC(Model、View、Controler)框架。JSP Model2体系结构是一种联合使用JSP 与Servlet 来提供动态内容的方法。在Struts框架中,模型由实现业务逻辑的JavaBean或EJB组件构成,控制器由Servlet实现的,视图由一组JSP文件组成。采用Struts可以明确角色的定义和开发者与网页设计者的分工。而且项目越复杂,其优势越明显。

  七、 源代码安全

  PHP开发的程序的源代码都是公开的,他人拿到php开发的程序后都可以进行修改。

  Java开发的程序,最后用户拿到的是只是一些编译好的class类,无法看到完整的源代码,安全性高。

  八、性能比较

  有人做过试验,对这两种种语言分别做回圈性能测试及存取Oracle数据库测试。

  在循环性能测试中,JSP只用了令人吃惊的四秒钟就结束了20000*20000的回圈。而PHP测试的是2000*2000循环(少一个数量级),却分别用了63秒。

  数据库测试中,二者分别对 Oracle 8 进行 1000 次 Insert,Update,Select和Delete: JSP 需要 13 秒,PHP 需要 69 秒。 

  表格 1 PHP 与Java的比较

   PHP JAVA

  可复用性 低 高

  开发速度 快 慢

  易维护性 差 优

  可移植性 优-Linux、Windows、Unix等

  安全性 低 高

  开发费用 低 高

  多层架构 差 优

  数据库访问 接口不统一 接口统一

  可扩展性 差 优

  面向对象 差 优  

  综上所述,我个人认为,PHP适合于快速开发,中小型应用系统,开发成本低,能够对变动的需求作出快速的反应。而Java适合于开发大型的应用系统,应用的前景比较广阔,系统易维护、可复用性较好。还有,同样功能的系统用Java开发的系统要比PHP开发的系统的价格要高.

分享到:
评论

相关推荐

    Java和PHP的web开发技术比较

    这篇文章将深入探讨Java与PHP在Web开发中的技术对比,帮助开发者更好地理解两者之间的差异和适用场景。 首先,Java是一种面向对象的、跨平台的编程语言,它的强类型和编译特性使得代码具有高度的稳定性和可维护性。...

    Java和PHP在Web开发方面的比较

    Java 和 PHP 在 Web 开发领域的比较是一个经常被讨论的话题,因为两者都是广泛使用的后端编程语言,各有其优点和适用场景。以下是对标题和描述中提及的几个关键知识点的详细阐述: 1. **语言特性比较**: - PHP 是...

    基于Java的Web开发技术.pdf

    基于Java的Web开发技术汲取了Java语言的优点,并在不同平台上展示了强大的功能,这对于Web技术的完善和发展起到了推动作用。 PHP技术是一种服务器端的嵌入式脚本语言,与C语言风格相似,广泛应用于各种编程环境中。...

    借《浅谈PHP与Java之Web开发整合技术》说LAJP

    《浅谈PHP与Java之Web开发整合技术》一文深入探讨了PHP与Java两种语言在Web开发中的结合应用,尤其聚焦于三种关键技术:SOAP、Quercus和PHP/JavaBridge,为开发人员提供了宝贵的整合思路。 ### 一、SOAP(Simple ...

    c# ,java,PHP 海康威视web最新版开发包,正在使用源码

    在IT行业中,Web开发是一项核心技能,涉及到多种编程语言和技术栈。这个压缩包"CH_WEB3.0控件开发包V1.1.0_Win32"显然为开发者提供了跨平台的集成解决方案,支持C#,Java,PHP以及ASP.NET MVC这四种流行的编程语言。...

    PHP和MySQLweb开发第5版(英文高清PDF和31章源码)

    语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的...

    java web 技术详解

    Java Web技术是一种广泛应用于网站开发的重要技术栈,它涵盖了从前端页面设计到后端业务逻辑处理的全过程。随着互联网的飞速发展,Java Web技术也在不断地更新迭代,以适应越来越复杂的业务需求。 #### 二、Java ...

    Java和PHP在Web开发方面的比较.doc

    在Web开发领域,Java和PHP都是非常流行的选择,两者各有优势和特点。以下是对这两个语言在Web开发方面的详细比较: 1. **语言特性比较** - PHP是一种解释型的服务器端脚本语言,语法简洁,与C语言相似,学习曲线...

    PHP/Java Bridge的JavaBridge.jar、php-servlet.jar和php-script.jar

    PHP/Java Bridge是一种技术,它允许PHP和Java应用程序之间进行通信和数据交换,极大地扩展了PHP的功能,使得开发者能够利用Java平台的强大功能。这个技术的关键在于它的几个核心组件,其中包括JavaBridge.jar、...

    PHP和MySQLweb开发第五版源代码

    语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的...

    JAVA外文文献翻译基于Java技术的Web应用设计模型的比较研究.pdf

    根据给出的文件部分内容,本文将详细探讨关于基于Java技术的Web应用设计模型的比较研究,特别是涉及到的主要技术点和设计模式。从内容中可以识别出多个Java Web应用开发领域的重要概念和技术。 首先,文档提到了...

    php调用JAVA类

    PHP以其易学易用和丰富的Web开发库而受到欢迎,而Java则以其强大的企业级应用支持和跨平台特性闻名。当我们需要将已有的Java类或方法整合到PHP项目中时,就需要实现PHP调用JAVA类的功能。下面将详细探讨这一技术实现...

    PHP和MySQL.Web开发(第5版)PDF书-英文+源代码

    语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的...

    Java和PHP在Web开发方面对比分析_.docx

    在选择适合的 Web 开发技术时,需要考虑多个因素,包括学习曲线、性能、数据库访问、系统设计、跨平台性、开发成本以及安全性。 首先,从语言本身来看,PHP 以其简洁的语法和与 C 语言相似的特性,对初学者更友好,...

    JAVA WEB 开发帮助文档

    【JAVA WEB 开发帮助文档】是一份综合性的资源集合,旨在为从事JAVA WEB开发的人员提供全面的技术支持和学习指导。这份文档集包含了JAVA、PHP、JavaScript(JS)、HTML、XML、CSS以及WEB CHM工具手册等多个编程语言...

    java web开发入门资料

    早期的Web主要由静态HTML页面构成,随着需求的增长,动态内容和用户交互的需求催生了诸如JSP、ASP、PHP等动态Web开发技术的出现。 1.4 静态Web 静态Web页面由HTML等静态文件组成,服务器直接返回文件内容给客户端...

    JAVA、PHP、JS(JAVASCRIPT DOM)、HTML、XML、CSS、W3C、正则表达式、WEB开发人员必备CHM工具手册大全打包下载-PART2(完)

    JAVA、PHP、JS(JAVASCRIPT DOM)、HTML、XML、CSS、W3C、正则表达式、WEB开发人员必备CHM工具手册大全打包下载.rar 这里是我个人在WEB开发7年来,收集的CHM工具手册中精选出来的,每个都是精品中的精品,个人认为...

Global site tag (gtag.js) - Google Analytics