我正在使用EJB 3.1开发java企业Web应用程序,我想知道在哪个MVC层上使用哪种技术。我有耳,ejb(jar)和战争项目。
是否可以使用其他东西作为持久层然后JPA实现(例如myBatis)以及如何使用?我想自己管理一些更难的查询。
除了JSF或普通servlet之外,在web项目(war)中使用什么框架?
我熟悉Spring,是否有可能在Web(战争)项目中使用Spring并从其控制器中受益?
您能解释一下哪些技术用于开发企业Web应用程序?
感谢。
答案 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。
我建议你阅读以下书籍并按照给出的顺序