jquery – JSF 2.0与Wicket vs. SpringMVC 3.x有特殊要求

前端之家收集整理的这篇文章主要介绍了jquery – JSF 2.0与Wicket vs. SpringMVC 3.x有特殊要求前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_404_0@
在新的 Java EE 6项目中搜索可用于我的几个关键要求的Web框架,我在这里阅读了现在关于这个主题的许多线程,我终于可以将预想的框架数量减少到JSF 2.0,Wicket 1.4(组件基于)和SpringMVC 3(基于动作的).

关于这些框架,如果可能可以实现以下要求,我将需要一些建议:

>最佳分离的设计师/编码器工作流程,使设计人员 – 最佳 – 可以用他们喜欢的Dreamweaver工具独立地阐述他们的HTML,CSS,JS / jQuery文件.
>容易集成许多现有(花哨和动画)的jQuery组件,如这个Sliding Login Panel(一个演示可以看出here).因此,这个要求实际上很容易集成现有的HTML CSS jQuery代码,而且还有:
>对于ui组件树,通过客户端(通过JS / jQuery)动态地更改视图状态的同步机制与服务器上的相应视图状态.

我想我会需要的例如,想到上面的“滑动登录面板”在客户端可以通过JS打开或关闭.其初始状态被编程为“关闭”,用户决定客户端始终保持打开状态.现在,当用户导航到某处并再次返回到该视图时,登录面板状态是无意的“关闭”而不是“打开”(因为这是其初始状态,服务器端没有发生动态状态更新).

因此,需要一个同步机制,对吧?
>最佳外部化(某处集中)导航规则
(a)任意页间导航(静态导航规则),以及
(b)“向导式”导航(动态导航规则动态确定
当前状态/结果).
>良好的性能(加载时间,服务器内存消耗,经验响应等).

明显的问题是:

> JSF2,Wicket和Spring MVC3支持哪些需求(哪些)?
>一般来说,随着这个需求 – 我仍然不确定技术方面/后果:
在这种情况下应该选择哪种框架类型(基于组件与行动的)(即应该牢记哪些关键决策方面或“经验法则”)?

非常感谢您的建议和帮助.
马丁

解决方法

JSF:

>在JSF(Facelets)的模板语言中,这很简单.您只需编写常规HTML,并为动态部分添加jsfc属性.参见维基百科文章一个快速的例子:http://en.wikipedia.org/wiki/Facelets
>使用JSF的复合组件这很简单.只要把你的jquery的东西放在一个.xhtml文件中,添加一个小标题,它可以作为一个组件来重复使用.许多基于jquery的组件也可以直接使用PrimeFaces
> JSF在这个同步机制中表现出色.同步通过良好的定义和容易掌握的步骤发生.基本上,这种同步机制或多或少是使用JSF而不是直接编写jquery的主要原因.
> JSF具有这一点,甚至称之为导航规则.它们是在外部.xml文件中定义导航的强大机制.可以基于在特定页面上发生的逻辑结果和/或动作来定义导航规则.它们可以是前向或基于重定向,有或没有额外的参数.
> JSF overal表现很好.它保持(保存)状态,所以这会花费你一些记忆,但它足够聪明,只能部分保存(与原始值不同的值).您还可以决定将此状态存储在客户端或服务器上.由于视图范围非常方便,您的后台逻辑使用的少量数据可以非常容易地在请求之间缓存.这样可以节省您在每次请求后触发数据库,​​并可以大大提高性能.

JSF真正照耀的领域之一就是其组件模型.通过复合组件概念组建组件非常简单.您还可以在Java中创建组件,这是更多的参与,但仍然绝对不困难.

因为JSF的组件模型是标准化的,并且非常清楚地记录在案,许多第三方提供了可以使用组件库的准备.例如. RichFaces,Primefaces,OpenFaces,IceFaces,特立尼达…这个名单几乎是无止境的.

关于性能的一些额外的注意事项.在比较三个Web框架中的任何一个时,您提到的区别是微不足道的,作为一种经验法则,Web框架不是处理请求时大部分时间花费的时间.这几乎总是在数据库和IO中.

Web框架可以帮助您轻松阻止访问数据库,但即使Web框架A在合成测试中比框架B仅打入Web层快10倍,实际上您几乎不会注意到,如果只有5%请求的时间是在该框架中花费.

猜你在找的SpringMVC相关文章