Oli*_*ryn 30 java jsf jsp jsf-2
我期待学习用于开发Web应用程序的Java技术.当我更加注重这一点时,我对jsf,jsp和javaee感到困惑.我知道在SO(帖子1,帖子2)上有几个帖子试图解决这些混淆,我还有其他一些帖子:
在您的回答中,您可以随意将这些技术与ASP.NET,ASP.NET MVC,Ruby on Rails,Zend Framework或常规Java Applet进行比较,因为这些是我已经熟悉的事情.
感谢您的时间.
Eva*_*tti 34
JSP"死"是否支持JSF?
JSF比JSP有许多好处.例如:
我们可以继续下去.
您仍然可以将JSP用于需要某些特定灵活性或性能的其他场景,对于servlet也是如此,但JSF几乎取代了JSP用于"健壮"应用程序.
现在,我是JSF的忠实粉丝,但还有很长的路要走.JSF 2.2有点看起来像一个成熟的框架,因为它有一个定义的导航标准(FacesFlow),我们在2.1中只有一个内置的文件上传器,它甚至不是AJAX,而且还有"HTML5"等等.所以是的,还有很多工作要做,我不会在这里详述.
根据我的经验,如果与JSF和其他框架(如Spring MVC)相比,JSP实际上是"死的".Java EE 7教程几乎没有提到JSP的任何内容.但它并没有死,因为Web容器已经支持它,你仍然可以使用它.
Java EE是JSF运行的平台还是完全不同的东西?
JSF是Java EE的一部分,但是为了使用JSF,您不需要完整的Java EE配置文件.例子:
Java EE组件是模块化的,您只需要Web Profile服务器/容器即可使用JSF.
JSF仅仅是用于开发Web应用程序的MVC框架吗?
是(但我不会仅仅说).每个人都有自己的利弊.但原则是一样的.
有人可能会争论与EJB的集成,但Spring MVC也有自己的容器.
JSF是由Oracle开发的框架和Java的一部分,还是一个单独的框架(很像Zend Framwork来自PHP)?
Oracle现在委托团队定义规范.理论上,如果需要,您可以实现自己的JSF.我不知道PHP的Zend Framework.
最常见的JSF实现是Mojarra和MyFaces.(Luiggi现在打败了我,你可以查看他的链接).
[Bonus]你会推荐学习jsp还是jsf?
我会推荐两者.JSP首先和JSF之后.
但我会100%建议你为你的项目使用JSF.但请确保您了解组件化以及使JSF成为强大工具的所有内容.
另请参阅JSF 2.2新功能,这个页面非常棒,可以介绍添加到框架中的最新功能.
Lui*_*oza 14
JSP"死"是否支持JSF?
不,它仍然作为视图技术用于传统和当前Web应用程序.此外,JSF使用JSP作为视图,但是从JSF 2开始,最好使用Facelets作为技术视图.这里解释了原因:为什么Facelets比JSF2.0以后的视图定义语言优于JSP?.简而言之,Facelets支持要呈现的内容的前后处理,而JSP则不支持.
Java EE是JSF运行的平台还是完全不同的东西?
JSF可以在任何Java Web应用程序服务器中独立运行.您只需添加必要的库:JSF-api和JSF-impl.
JSF仅仅是用于开发Web应用程序的MVC框架吗?
是.它没有为Web服务生成,连接池,事务管理等提供任何帮助.它支持EJB注入@EJB
和参数注入@ManagedProperty
,但这就是全部.您可以使用其他框架来完成这项工作:Hibernate,EJB,Spring,CDI等.
JSF是由Oracle开发的框架和Java的一部分,还是一个单独的框架(很像Zend Framwork来自PHP)?
JSF由JSR 344提供支持.Oracle 社区流程支持此规范,Oracle 支持该流程.由此可以推断,至少Oracle为JSF提供了一个实现.由于JSF是一个规范,它也可以由其他组织实现.目前,JSF的另一个实现是MyFaces.
这就像问我应该学习如何创建HTML或如何使用将为我创建HTML的库集?.JSP是一种用于Web应用程序视图的技术,它通过使用Java技术来支持动态内容.JSF是一个MVC框架,可帮助您通过视图,控制器和模型简化视图(JSP或Facelets)中的内容生成和数据绑定.您可以同时学习,我建议您了解您当前使用的内容或使用的内容.你应该学习IMO:JSF用于开发JSF应用程序,JSP用于其他MVC框架或维护用JSP构建的当前遗留应用程序.
归档时间: |
|
查看次数: |
35655 次 |
最近记录: |