今天看了ejb3.0的资料后,感觉就是它的会话bean和实体bean包含了hibernate和spring的一些工作一样。
在网上看了一下有关文档后,只知道他们各有各的特点,而ejb主要体现在分布式的系统中有一定的优越性。
但是总的来讲,感觉ejb性能不是很好,使用hibernate和spring的这种构架更好一样。请大家支招,我是用struts2+hibernate+spring 还是用struts2+ejb3.0呢?我个人想用前者,因为比较熟悉
了,ejb是刚在项目需求中提出来的。由于现在对ejb只有一点点了解,所以还不知道该如何去反驳使用后者架构的观点。

解决方案 »

  1.   

    这要看你做什么东西了,你要是做普通网站,根本不需要EJB。Hibernate是个好东西,可惜现在不是标准了。现在的持久化标准是JPA。
    但是Hibernate非常好的实现了JPA。Spring非常好,尽管Java7也要有自己的IoC标准了,但是这个是明年的事情了。
    Spring还是要用的。
      

  2.   

    healer_kx
     
    (甘草) 我们目前的项目是做一个基于SAAS平台的一个供销商管理系统,今后还有些其他子系统。并且是分布式的。
    你个人觉得该如何抉择呢?
      

  3.   

    不是很懂,但是分布式决定了你最好用EJB3了。
      

  4.   

    看项目类型和大小,一般网站不用框架都行,大点的ssh任选或一起上也行。100个类就能搞定的网站可以不考虑框架,呵呵。
      

  5.   

    EJB是重量级的,如果你确定要做的是大型分布式系统,那最好选择EJB。
    Spring可以当作是EJB的轻量级实现,但和EJB也没什么冲突。
    Hibernate是做持久化的,和谁都能搭配,想用就用。
    Struts是做控制器的,也可以用。
    至于怎么搭配,看需要了。我以前的工作做的小系统用过Spring+Hibernate、Struts+Hibernate、Spring+Struts+Hibernate。现在做电信的东西,躲不过EJB了,用Struts+EJB+JDBC。
      

  6.   

    既然是项目需求,那你只能用EJB了啊。
    我只喜欢用Spring,因为我们公司就用这一个,什么Strust,什么Hibernate都不用。一样能做成好的项目。
      

  7.   

    我推荐 spring+ibatis 或者 ejb+ibatis
      

  8.   

    saas系统一旦用户数多起来,每个用户需求千差万别,对应的表也就千差万别,你用hibernate或JPA都会疯掉的
      

  9.   

    分布式的,就得用ejb3了,否则就用webservice,但是楼主没提到这个技术所以只能用ejb3了
      

  10.   

    我就是想用webservice啊。顺便说下。基于SAAS做的这个系统,我们是尽量抽取各个客户的共性。
    差异较大的客户我们会考虑单独做一些开发的。
    反正我就想尽量不用ejb。
      

  11.   

    一般是给其它系统调用的接口部分才适合用webservice实现,性能要大打折扣不说,技术还有一定风险呢。
      

  12.   

    JPA有一个非常好用的工具,但是我不确定是不是IBM才能用的,RSA。
    非常快速的通过UML建立JPA对象关系。