java可以在各种系统上运行,其实.net也有这个潜力,只不过里面的一些和windows api相关的类就不能用了,网络方面的类应该是可以很好运行的。.net有一套开发工具,可以提高开发速度。如果是比较大型的应用的话,还是java比较适合。不过java对服务器的要求一般比较高。.net有一套MS自成体系的东西(windows + sql server + office + .net +...)他们之间没有兼容性问题。java的话老是会遇到些兼容问题。.net依赖的windows价格还可以。linux是免费的,但是如果大型应用用IBM的话,简直是天价。.net比较新,借鉴了java,不能否认.net是比java先进。

解决方案 »

  1.   

    j2ee的优势
    1.j2ee应用程序服务器一般集成了很多组件程序,比如说web server, jms, app server. ejb component 封装得比.net组件要多些,它可以进行事务处理,persistence等功能。
    2..net组件没法完成事务处理功能,要进行事务处理,你必须用COM+的transaction processing function. .net中没有异步消息功能(i.e. jms function),在COM+中你可以用消息队列来完成这样的功能。.net对数据库的处理功能,ado.net是面向无连接的应用,但事务处理等功能需要自己编写程序或用在数据库中处理。.net web server, .net framework等各server不是集成在一起,多少有些不方便。
    以上是我认为.net相对来说比较不方便的地方。.net的优势
    1..net的元数据功能强大。
    2.部署非常方便。
    3.side by side execution,解决了版本问题,允许多版本共存,resolved dll hell.
    4. This is a reable one, code behind technology.
    5. Also a reable one, easier Web Service development and deployment.
    6. back compatible,对以前产品的兼容,如果用java,你以前用com+实现的东西就会变成一堆废品。
    7. vsa,方便我们开发script application.我们可以开发一个应用程序象office一样有一个script editor.这点很诱人。
    8. .net speech technology,前景广阔,call center中大有前途,和Voice xml竞争产品,version1.0马上要release了。一下是我不太清楚的东西:
    ms以前有Smart Card sdk1.1,但在.net中好像还没有实现。而Java Card非常好用,j2me功能我觉得还不够强大,同时.net在这方面也还不是很强大。
      

  2.   

    J2EE vs. NET, Java vs. C#:比较公正的评价
    http://www.csdn.net/Develop/Read_Article.asp?Id=18757
      

  3.   

    .Net最大的优势是简单和window结合紧密java的优势在于跨平台和大型企业应用
      

  4.   

    .net快速,小巧
    j2ee强大,成熟