一、语言
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等,如果需要更好的商业化的服务有:WebSphere和Weblogic。
六、分布式多层架构比较
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秒。
综上所述,PHP适合于快速开发,中小型应用系统或者网站类的web开发,开发成本低,能够对变动的需求作出快速的反应。而Java适合于开发大型的企业级应用系统,应用的前景比较广阔,系统易维护、可复用性较好。还有,同样功能的系统用Java开发的系统要比PHP开发的系统的价格要高。
2. 哪些OA系统采用JAVA开发技术
Java都是老一代的技术了,现在新OA的领导者Colloa(10oa)协同运营平台是用的h5等最前沿的技术,为公司减少前期优化和后期维护的成本,OA软件操作简单,易用,关联性强,给公司在业务上节省更多成本。
3. 用java开发一套OA的预算大概是多少
想用java开发一套OA的话,如果单独开发,大概要40-50万。后期服务根据服务项目来确定收费标准,不会太高。另外需要确认是哪个城市的,这个和所在地有关,不同的地方有不同的价格,是不一样的。
4. OA软件技术选型:JAVA成为高端首选,哪些公司的OA是使用JAVA开发的
近年来,协同OA市场一直保持着强劲的增长势头,越来越多的企业开始在日常办公中应用OA协同办公系统。目前市场上,OA开发技术主要集中在:.NET、JAVA、ASP/PHP。其中,JAVA语言发明已有10年历史,
在IBM、九思软件、SUN等公司的推动下已经比较稳定与成熟,获得了大规模企业的普遍应用。由此可见,JAVA语言已经轻而易举的成为高端应用的首选技术。
九思软件:
开发技术:JAVA
主要优势:集团化版本成熟,工作流、公文管理、项目管理、文档强大,易用性强,开发性好,整合性好、成本低、开发敏捷、实施和使用较为简单易用。
5. oa核心开发技术有哪些
1、java技术,可以说java目前来说是做oa最主流也是最可靠的开发语言了,因为该语言就有安全、开放、稳定和跨平台等优点,让开发商爱不释手,比如华天,九思等都是用的java开发环境,他们的产品灵活性和可扩展性都非常好,尤其是很好的高性能和稳定性这是让用户最喜爱的。oa系统使用java开发有几点原因,第一就是灵活性和扩展性,这让java开发出来的oa可以处理第三方的业务和数据,这样的话整合资源将是十分方便的一种架构,减少了二次开发的过程和成本。
2、php技术,php技术一直经久不衰,安全性和稳定性也非常不错,代表oa就是78oa。采用的就是php做的一套完善的oa系统。这类系统的最大特点就是轻量级,安装简单方便,部署容易,但是麻雀虽小五脏俱全,oa该有的功能都会有,只不过php的环境在linux下运行的最好,windows下需要安装下阿帕奇和mysql来支持他,不过没关系 78oa已经封装好了,只要一直下一步基本不需要配置什么就可以使用,部署安装完全是傻瓜操作。
3、.net是微软的一个平台,他的最大的特点就是敏捷开发,什么框架都给你封装好了你完全不用知道里面是如何实现的只要会引用就可以,这样做出来的oa质量高而且不容易出问题,但是这个平台十分重量级,一般只有政府企业或者其他机关外企才会使用这样的气筒,比较笨重
6. 有没有比较成熟的采用Java开发的OA系统源码
目前java语言是最稳定的,高端OA如用友泛微等,都是用java开发的,所有的语言见下面
OA软件的开发语言很多,目前较为常见的有ASP/PHP/.Lotu Domino/.Net/JAVA 五种语言,五种语言各有特色,其最鲜明的就是——他们代表了“计算机语言发展使用简史”。
1. ASP语言
ASP是微软的初始WEB产品,在97年左右推向市场,是最初较早的WEB语言技术,很多小型简单的网站都是用ASP语言开发的,由于是九十年代的产品,所以在计算机语言升级以后,其本身最大的一个问题就突显了出来其可扩展性比较差,与现在的主流计算机语言.NET和JAVA对接都很困难,所以我们经常见到很多用ASP语言技术开发的小型网站在2003年以后面临升级等问题时都令人头疼,最后很多公司都采取了弃用之前的ASP语言结构的产品转而使用最近的语言技术开发网站。
使用ASP语言脚本技术开发的产品最令软体工程师头疼的是ASP技术与.NET平台对接基本不太可能(笔者过去就经历过ASP网站改造成.NET网站的事情,那经历简直可以用“苦难”两个字来形容)。由于ASP的语言久远,所以现在在新开发的系统已经使用不多。今天市场上依然能够看到的ASP语言开发的OA软件多是在05年以前生产的产品的基础上改善的。
目前用ASP语言开发的产品有:金和
2. PHP
PHP语言与ASP基本上属于同一时代的产品,但是成熟时间稍微比ASP要晚一点,PHP语言在开发上稍微比ASP复杂,其最大的优势就是其版本就像LIUNX系统一样是一个免费开放型的平台,开源代码很容易就找到,这样就解决了程序开发人员自己绞尽脑汁的去写程序,由于是开源的,很多程序在互联网上都可以找到,但是版权问题和安全性问题是一直困扰PHP技术的两个难题。国内的通达OA一直有很多盗版,其实根源问题就是PHP的开源代码性导致的(大家可以参考通达官网)。
和ASP一样,在2000年左右,PHP成为了网站的主流开发工具,PHP与ASP相比的优势就是跨平台性好些,但是如果面对大型结构的用户群或者门户网站,PHP又有一些力不从心。所以PHP技术也正在逐渐走下坡路。PHP语言目前仍有不少网站还在使用,但是主流的应用系统已经呈现正在放弃使用的趋势,基本层面上正在淡出了开发工具的选型范围。
目前应用PHP技术的OA产品有:通达,泛微的eOffice。
由于PHP的开源和ASP的易用性再加之其语言技术久远,造成一种事实——现在很多高校和计算机语言职业培训学校已经或者开始放弃了使用PHP和ASP教学,这也就决定了PHP语言技术正在沦为更新换代型的产品,对于使用者来说,就出现了未来的升级困难可能大的风险。
作为行销策略上的吸引点,很多采用PHP和ASP技术的OA软件多用低价的策略冲击市场,采用这两项技术的OA软件实际上更多的是应用于低端产品。
3. Lotus Domino
是IBM 在96年左右流行起来的OA开发工具,优点是开发速度比较快,基于Lotus的脚本进行开发,与Lotus 的邮件系统相整合,主要用来作工作流和内部邮件的传递,由于Louts采用专用的文档数据库系统,查询和数据统计效率就比较低下,与关系型数据库的整合很不好。所以Lotus Notes对于仅对单一的消息和工作流系统来说是不错的架构,但如果想做较大规模的业务整合或者业务开发会是困难重重。
使用Lotus Notes语言架构的OA产品最大的难点就是针对业务系统整合起来比较难。97年笔者曾经在北京见过IBM推广过Louts系统,也许在国外懂louts语言的人很多,但是事实上在国内懂louts系统的人少之又少,这也就决定了louts在中国国内市场上一直都打不开局面的原因之一,由于懂louts语言的技术工程师较少,所以使用louts语言开发的软件的产品面临最大的困难是升级维护,物以稀为贵,louts系统工程师的支付成本也相对比较高昂。
国内应用louts语言的OA产品:合强
以上三种语言技术在90年代的时候都曾经是WEB或者主流开发语言,但是随着计算机语言技术的不断升级换代,这三种语言技术逐渐淡出人们开发OA软件的视线,使用这三种语言的技术工程师人员数量也呈现出阶梯数量级递减,也许到了2020年,ASP,PHP语言技术的工程师将会成为全球“稀有语言动物”,也只有到了那个时候做ASP,PHP语言的工程师拿的薪水会比主流工程师拿得多得多。
4. .Net
目前国内计算机语言的主流技术之一,有一个现象大家都可以看到——现在软件公司的招聘广告,从招聘广告上我们看到现在更多的招聘对象都是JAVA和.net的技术工程师,从这个市场热度不难看出——JAVA和.net在未来很长的一段时间里将代表开发语言的主流。
论证其是否是主流原因的方法很简单,第一:是否有国际大厂商的支持。第二:可扩展性,可升级性,模块化,面向对象等等优势。产品开发出来的安全稳定性以及开发出来的可伸缩性。当然可扩展性和可升级性、模块化这些都是没有办法可视化的,对于那些对OA语言感兴趣的爱好者不防多看看计算机语言技术方面的书籍,其实每本书里都有介绍JAVA和.net在扩展、升级、模块化方面的均衡优势。第三:还有一个最为简单的验证方法,就是可以问问你身边搞过研发或者懂点计算机语言技术的朋友,他们都会给你一个明确的答案。
.NET语言开发的软件产品稳定性较高,产品可以模块化是一个存在的事实优势,但.NET具有很强的优势的同时,也存在一定的劣势,如跨平台、大数据并发。同时.Net与ASP对接时,就会导致产品的安全性变低,.NET平台的安全性会随着ASP的安全漏洞安全为黑客或者不法分子利用进而破坏,这个也就一直困扰软件技术工程师的一个最大的问题——.NET语言没有办法和ASP对接的最大一个因素之一。当然.NET如果不需要与ASP语言对接,那么也不存在这样的风险。
7. 为什么华天动力协同OA系统采用JAVA开发技术
因为Java是目前使用最广泛、发展最迅速、认同度最高的企业级应用开发技术。像在北京这种发展快的城市,选择华天动力很好,因为它相对其他技术,它具有安全、开放、稳定、跨平台等突出优势。Java技术是一套标准,它由诸多顶级公司和遍布全球的开发者一起支持,所以技术的通用性和标准性比较高,目前基本上成为企业级解决方案的事实标准。
8. 华天动力协同OA的JAVA开发技术相比.NET有什么优势
java的开放性是其最优越的地方,这使其比.net更兼容多种操作系统,而不限于windows的平台,而且拓展性更强,能够更方便的和其他系统进行数据整合,有很多安全性也更高。
9. 用java开发一套OA的预算大概是多少
如果单独开发,大概要40-50万,我们有一套完善的J2EE的OA系统,如果需要可以给我联系,价格大约20-30万,具体可以再谈。
后期服务根据服务项目来确定收费标准,不会太高。
另外需要确认你是哪个城市的。