首页 > 编程语言 >java网上商城与php网上商城比较

java网上商城与php网上商城比较

时间:2022-11-19 22:39:23浏览次数:45  
标签:PHP JAVA 数据库 网上商城 java php 比较


java网上商城与php商城比较

1. 应用比较:JAVA的应用比较广泛,比如世界五百强网站,大型政府网,各大银行等网站都是基于JAVA构建。
基于JAVA技术开发的商城系统是比较少,JAVA与PHP相比,在功能、性能各方面都要强于PHP,JAVA适合大型项目的开发,费用相对于PHP网店肯定会高点。

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

3. 数据库访问比较:Java通过JDBC来访问数据库,通过不同的数据库厂商提供的数据库驱动方便地访问数据库。访问数据库的接口比较统一。
PHP对于不同的数据库采用不同的数据库访问接口,所以数据库访问代码的通用性不强。例如:用Java开发的web应用从MySQL数据库转到Oracle数据库只需要做很少的修改。而PHP则需要做大量的修改工作。

4. 系统设计架构比较:采用Java的web开发技术,需要使用的是面向对象的系统设计方法,而PHP还是采用面向过程的开发方法。所以用Java进行开发前期需要做大量的系统分析和设计的工作,这样有利于以后扩展以及维护。

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

6. 分布式多层架构比较: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可以明确角色的定义和开发者与网页设计者的分工。而且项目越复杂,其优势越明显。

7. 源代码安全比较:PHP开发的程序的源代码都是公开的,他人拿到php开发的程序后都可以进行修改。
ava开发的程序,最后用户拿到的是只是一些编译好的class类,无法看到完整的源代码,安全性高。

8. 总结指标比较:
PHP JAVA

可复用性 低 高

开发速度 快 慢

易维护性 差 优

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

安全性 低 高

开发费用 低 高

多层架构 差 优

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

可扩展性 差 优

面向对象 差 优


eoeshop是一套使用强大、安全的JAVA语言开发,基于企业级J2EE架构设计,使用目前最新最优秀的框架(struts2,spring2.5.6,spring security,hibernate3.5,freemarker2.3,jquery等)的商城系统。
整个商城具备优秀的负载性能、极快的响应速度、稳定的产品质量、牢固的安全特性、流畅的web流程控制、良好的跨平台特性和后续开发的可扩展性

标签:PHP,JAVA,数据库,网上商城,java,php,比较
From: https://blog.51cto.com/u_15458282/5870756

相关文章

  • java.lang.OutOfMemoryError: PermGen space
    可能是自己的系统写的比较烂,三个系统一起跑过几天就出现内存溢出,从网上查了一下,这类问题应该先进行code修改。PermGenspace的全称是PermanentG......
  • java——集合——Map集合——Map接口中的常用方法
    Map接口中的常用方法Map接口中定义了很多方法,常用的如下:publicVput(Kkey,Vvalue):把指定的键与指定的值添加到Map集合中。publicVremove(Objectkey):把......
  • javaSE基础-OOP
    面向对象面向过程(ProcedureOrientedProgramming):强调的是功能行为,以函数为最小单位,考虑怎么做面向对象(ObjectOrientedProgramming):强调具备功能的对象,以类/对象为......
  • Java中的自定义注解Annotation
    与注释不同,注解可以被其他程序读取。内置注解:@SuppressWarnings参数:   元注解:用来注解其它注解的注解。1.@Target:使用的位置。包括:TYPE意味着,它能标注"类......
  • 【java基础】内部类
    什么是内部类?内部类就是定义在类的内部的类,称之为内部类Java中内部类分为以下4种:成员内部类,内部类在定义时没有使用static修饰(知晓)静态内部类,内部类在定义时使用st......
  • java中float、int等数值转为二进制方法或者十六进制的方法记录
    //将int解析成二进制,再根据二进制转换成floatFloatf=Float.intBitsToFloat(i.intValue());//格式化float,固定显示的小数点位数。DecimalFormatdf=newDecimal......
  • JavaScript基础知识——对象
    定义无序数据的集合,键值对的集合。写法构造函数letuser=newObject({name:'yang',age:100})字面量letuser={name:'yang',age:200}匿名对象console.l......
  • java常用查询
     生成文档javadoc-ddoc hello.java                   ......
  • java暂存
    publicclassMain{publicstaticvoidmain(String[]args){Stringm=Integer.toBinaryString(120);System.out.println(m);intss=Intege......
  • Java异常跟踪栈
    Java异常跟踪栈异常对象的printStackTrace()方法用于打印异常的跟踪栈信息,根据printStackTrace()方法的输出结果,我们可以找到异常的源头,并跟踪到异常一路触发的过程。看......