JSF 和 Spring 性能与较差的 JSP 性能
-
03-07-2019 - |
题
我看到我的同事开发了一些 JSF 项目,这些项目在我看来速度非常慢。有人有同样的看法吗?
我目前正在使用 jsp+jstl 和 jQuery 作为“富”客户端。
我想知道现代框架(jsf、wicket、tapestry..)相对于旧的普通 jsp 有何优点和缺点。
如果使用所有这些技术的人能够回答的话那就太好了。
对我来说,哪些最令人兴奋的功能让您离开 jsp 并使用“大规模”框架(我的意思是,例如 Spring 中的 AOP 或其他您能注意到的东西)也很有趣。
感谢所有的评论。
解决方案
我使用过 CGI、PHP、JSP、Struts、Spring MVC (1.2)、Bea Workshop、JSF、JBoss Seam、Spring MVC (2.5) 和 便门 (以该顺序)。我注意到我所研究的每项新技术的生产力和质量都得到了飞跃。它只是效果更好,它 感觉 更好的。与其他所有的相比,我更喜欢 Wicket(带有弹簧、石英等扭曲)。我可以诚实地说我看到了光明,我不想回到更黑暗的一面——或者更光明的一面;)——。
关于Wicket,有很多话要说。
- 默认情况下提供对话支持(或启用选项卡),您不必再担心“在新选项卡中打开”和“后退”按钮问题。
- 它是基于组件的,因此您可以重复使用 swing 代码。
- 利用许多标准 Java,例如类型安全奇迹。
- 支持 URL 加密等高级安全功能。
- 默认情况下可集群的应用程序。
- 而且,最重要的是,它是 乐趣 使用。
JSP 和 JSF 有很多需要改进的地方。
其他提示
我完全喜欢使用JSP 2.0作为模板技术 - 我使用Spring MVC来访问我的域对象并为特定视图准备我需要的所有数据,并将其留给JSP来呈现它。 JSP 2.0,因为我喜欢使用标记文件进行模板合成,这使我可以使用简单的JSP 2.0,我需要其他合成框架。
我故意避免JSP中基本上是编程的一切。没有数据访问,没有SQL,没有scriptlet,没有方法,没有任何东西。只是通过一些简单的案例和集合的迭代,简单地呈现预先存在的,控制器提供的数据。
优点很多。我可以列举JSF优势,这是我在上一个项目中使用的那些。
- 导航的集中位置(就像在 struts 中一样)
- 日期选择器、自动完成、分页等组件。
- 您已经对布局进行了渲染,这有助于很多布局逻辑。
- 瓷砖的可用性,就像在支柱中一样。
JSP 没有明确区分业务逻辑和布局。
无论如何,尽管有所有这些优点,但如果您是 Java 程序员,我建议您看看 圣杯 这要舒服得多。
JSP非常原始,你基本上没有小部件,必须自己构建一切。 JSF虽然改进不是java的最佳Web框架 - 还有很多其他的东西可以让你获得更令人印象深刻的结果 - 例如GWT。
Spring MVC 的优点:
- 该框架巧妙地鼓励您编写设计更好的代码:通过使用依赖注入,并将应用程序设计分解为域(模型)对象、控制器、服务类、DAO 等。
- 作为第一个要点的副作用,您的代码最终会变成 极其 并且易于进行单元测试。