评价.Net和J2EE

原创 2001年11月21日 10:32:00

先看:
http://www.microsoft.com/china/msdn/library/dn_voices_webservice/html/netjava.asp#net10

微软抢手的一点总结:
我们相信使用存储过程的.NET实现不但是一种比J2EE BMP模型更为高级的设计模式,而且还能提供比其更好的性能和扩展性。该应用程序的两个版本的基准数据证实了这一点。

我的观点:
J2EE中的任何一层不依赖于特定的产品,所以不用存储过程,并不是因为设计模式。
文章一再强调的.Net优点:Cache,Stored Procedure,XML Web Service, 扩展性好和高性能也是被作者过分夸大(某些测试项竟高出28倍)
基于J2EE的解决方案要引入这些特性是轻而易举的,至少我在Java项目中也使用Cache和XML Web Service,并不觉得扩展很麻烦,相反我可以自己组态,深入事务内部。而且EJB2.0中大大提高了CMP应用场合的兼容性,这可是.Net尚不具备的(ASP.Net服务器控件中还没有类似的功能)


下面稍微比较一下两种解决方案:(以下纯属个人观点)

性能方面:
最终用户衡量的唯一标准:
性能瓶颈主要在中间层以下:EJB1.0或EJB1.1的效率确实不怎么样,不如轻量级的解决方案性能来得好,比如:硬编码直接访问数据库,对象关系映射,采用存储过程封装商业逻辑,采用对象库存储。特别是BMP管理起来代码文件特别多,发生业务变更时更需要重新配置服务器,影响了业务的连续性,但.Net的解决方案也不见得好啊!
页面缓存和对象缓存:J2EE没有相应的标准,但某些应用服务器扩展提供了相应的标准,用法不一,提供的功能也不相同,目前我只使用了对象缓存和少量的页面缓存,效果相当好(昨天刚升级了一把,可以在线通过网页直接命令存储中的某个对象或页面重新装载,但尚不具备同时支持登录和未登录的两种页面显示缓存,我将使用FilterServlet提供这一功能)

开发效率方面:
对我们来说选择开发工具的最需要衡量的就是这一因素:
表现层开发:J2EE这方面非常欠缺,把这一任务丢给了应用服务器厂商和编程人员,不象.Net拥有很牛的.Net Studio,不过Jbuilder 6已经出来了,支持EJB2.0 也不算太落后,但一直没有解决方案的就是页面用户控件(当然Turbine的Action Event也算一种),缺乏可视化设计和Servlet应用程序框架生成。我期望的一种方式是具有象.Net Studio一样的可以所见即所得的编辑模板(Template),绑定用户按钮事件处理。目前可以通过JavaScript库,模板库及宏库略微缓解一下Servlet的开发。ASP .Net和Servlet都支持动态更新表现层。(目前我已经支持通过数据库储存某些需要实时修改的模板供主模板调用)

商业逻辑层开发:
在这层的工作应成为高级程序员的重点而且应作为公司财产保护起来,大家的精力主要是要维护起公司商业库的升级和功能扩展,并进行良好的配置管理(应采用ClearCase,CVS对库的管理能力太差啦!)。

配置及发布:
发布和配置应完全独立开来,所有的配置项都应该可调(路径,数据库连接,EJB描述文件等),很可能正式发布的数据库表名,字段定义并不和开发人员的一致(如果开发产品的话,这点很重要!)
.Net只能通过存储过程方式来提供所谓的解决方案,而J2EE这方面做得非常全面,如果商业库是符合发布迁移规范的,系统管理员完全可以做到任何细节可控。这一过程需要商业逻辑层开发人员的努力。

XML支持能力:
.Net一直叫嚣的就是我集成了XML和Web Service,但JDK1.4也搞出了XML规范,这方面已经差不多了,不过.Net的易用性好得很,而且就此一家,程序员不必费心思选组件或产品。
在采用XML和XSLT的开发模式中:微软的SQL Server 2000直接提供了HTTP Query到XML数据的功能,不过我用dbxml也能做得这一点嘛,还适用于大多数的主流RDBMS,更牛!这种开发模式应该是未来的方向。

分布式组件,消息服务和事务服务支持等方面:
我的经验不足还不能评价。
.Net用COM,DCOM,MSMQ和MTS
J2EE用EJB,JMS和JTS

安全性方面:
通过网页授权方式:
.Net支持的验证方式:Windows, Forms, Passport,None
Servlet支持通过扩展也能支持这些,而且通过丰富的加密算法(例如AES)也很容易集成到自己的解决方案中
Passport足以显示微软的野心,不过其安全性有漏洞,上个月就出过问题,停了三天。SUN正联合几个大厂商开发针对Passport的相同产品规范。

 

J2EE与.NET技术架构的比较

一、J2EE简介 J2EE体系结构图:                          1.组件-容器模型 J2EE是一个基于组件-容器模型的系统平台,其核心概念是容器。容器是指为特定组件提供服务...
  • kanglix1an
  • kanglix1an
  • 2014年06月04日 19:36
  • 8077

js实现仿淘宝商品评价的星级评定效果

物流公司的服务: 20 40 60 ...
  • biaobiao1217
  • biaobiao1217
  • 2014年10月28日 14:51
  • 1788

【杂谈】PHP和J2EE比较(转)

我们该如何选择?java还是php?《Java和PHP的web开发技术比较》 比较PHP和JSP这两个web开发技术,在目前的情况是其实是比较PHP和Java的Web开发。以下是我就几个主...
  • u013517797
  • u013517797
  • 2015年02月02日 15:59
  • 2226

.net(偏web) vs j2ee的一些框架选型

带链接的完整版本: http://files.cnblogs.com/lovecindywang/.net.pdf http://files.cnblogs.com/lovecindywang/j...
  • ddxkjddx
  • ddxkjddx
  • 2012年08月07日 14:11
  • 468

浅析J2EE与.NET平台优劣

J2EE .NET 通信协议 Remote Method Invocation over Internet InterOrb Protocol (RMI/IIOP),XML 运行时环境 J...
  • lansechuixue
  • lansechuixue
  • 2011年11月21日 23:17
  • 865

J2EE架构和.NET架构的相关知识

1.J:ZEE架构 J2EE(Java 2 Platform Enterprise Edition)是由Sun公司主导、备厂商共同制定并得到广泛认可的工业标准。业界各主要中间件厂商如IBM、Orac...
  • yaonianlong
  • yaonianlong
  • 2013年10月10日 08:58
  • 606

一个简单单点登录SSO的实现(.net到j2ee)

单点登录实现的方式有很多,这里介绍一种
  • jrn1012
  • jrn1012
  • 2014年05月15日 21:26
  • 1115

J2EE与.NET技术架构的比较

●技术与应用 J2EE与.NET技术架构的比较 岳福香 (电信科学技术第十研究所  西安  710061) 摘  要:从体系架构、移植性、性能、安全性、稳定性、可扩展性、成熟度、第三方厂商...
  • cztq15
  • cztq15
  • 2012年11月20日 10:17
  • 1715

J2EE Java Pet Store 与 .NET PetShop

[转]J2EE Java Pet Store 与 .NET PetShop 分类: 转载收藏 软件开发 2008-03-12 10:01 1695人阅读 评论(2) 收藏 举报 ...
  • lionzl
  • lionzl
  • 2012年05月23日 16:07
  • 999

J2EE与.NET技术架构的比较

●技术与应用 J2EE与.NET技术架构的比较 岳福香 (电信科学技术第十研究所  西安  710061) 摘  要:从体系架构、移植性、性能、安全性、稳定性、可扩展性、成熟度、第三方厂商...
  • caolaosanahnu
  • caolaosanahnu
  • 2012年08月22日 14:08
  • 1630
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:评价.Net和J2EE
举报原因:
原因补充:

(最多只允许输入30个字)