EJB项目使用哪种技术

时间:2012-02-09 15:51:11

标签: java model-view-controller view persistence ejb

我正在使用EJB 3.1开发java企业Web应用程序,我想知道在哪个MVC层上使用哪种技术。我有耳,ejb(jar)和战争项目。

  1. 是否可以使用其他东西作为持久层然后JPA实现(例如myBatis)以及如何使用?我想自己管理一些更难的查询。

  2. 除了JSF或普通servlet之外,在web项目(war)中使用什么框架?

  3. 我熟悉Spring,是否有可能在Web(战争)项目中使用Spring并从其控制器中受益?

  4. 您能解释一下哪些技术用于开发企业Web应用程序?

    感谢。

2 个答案:

答案 0 :(得分:5)

最好的组合是使用已有的东西。 JSF 2.0已经是最好的MVC框架之一,所以它通常是首选。

使用EJB 3.1时,这几乎总是与Java EE实现结合使用,因此在这种情况下,JSF已经存在,只需使用它就可以了。

Java EE堆栈中的不同技术可以相互协作,因此由JSF + CDI + EJB + JPA组成的典型堆栈是最理想的组合,您将获得最大的支持。

我个人认为在EJB / CDI堆栈中没有Spring的任何地方。这两种技术是直接的竞争对手,以(稍微)不同的方式解决同样的问题。将它们组合在一起很可能只会使代码复杂化。

答案 1 :(得分:3)

对于像你这样的初学者,坚持使用Java EE 5/6开箱即用。所以在你的情况下JSF + Facelets,EJB 3.1和JPA。

我建议你阅读以下书籍并按照给出的顺序

  1. Beginning Java™ EE 6 Platform with GlassFish™ 3
  2. Real World Java EE Patterns Rethinking Best Practices