Stu*_*ent 4 jsf el managed-bean
我仍然不清楚JSF immediate evaluation
vs 的使用deferred evaluation
,主要是因为在线示例几乎从未使用过前一种方法.
我已经看到了相当多的JSF示例,包括http://docs.oracle.com/javaee/6/tutorial/doc/中包含的那些示例,我有点困惑的事实是我几乎只看到了一些示例#{}
而不是${}
,即使我们正在做的只是读取bean属性.
从我对这两个用途的理解,${}
只能用于读取bean属性,而不是用于编写.我还没有找到关于JSF生命周期的immediate
vs deferred
评估的确切差异以及读取bean属性会有什么区别的明确解释.
如果每个人总是使用#{}
for read bean属性,你何时会推荐使用${}
?
所以,总结一下:
#{}
在${}
当读取 bean的属性?${}
而不是#{}
?${}
结果与使用#{}
的结果不同(你可以解释为什么结果不同)?Bal*_*usC 10
在Facelets中,${}
被视为#{}
,因此技术上没有区别,并且总是延迟.
在JSP 2.0及更早版本中,${}
当托管bean不在范围内时,它不会自动创建托管bean.因此,如果您可以保证在组件树之前的#{}
某个地方使用过相同的托管bean ,并且还考虑视图构建时间与视图渲染时间生命周期,则只能使用它.在所有JSP版本中,${}
都无法在模型中设置JSF输入组件的提交值.总而言之,混合它们可能会让初学者感到困惑,从长远来看甚至也会让你自己感到困惑,因此不推荐.
归档时间: |
|
查看次数: |
1524 次 |
最近记录: |