是JSF';s Managed bean是一个有状态的bean

是JSF';s Managed bean是一个有状态的bean,jsf,jsf-2,Jsf,Jsf 2,我试图理解JSF的生命周期,并阅读了以下教程: 它说: 该视图包含所有GUI组件,并且有大量 由JSF进行状态管理,以跟踪视图的状态–通常 使用HTML隐藏字段 我不知道JSF应用程序是在与客户机交互期间保持托管bean的状态,还是使用HTML隐藏字段来模拟有状态bean 术语“JSF状态”与托管bean属性(模型值)无关。它涉及UI组件属性,例如必需的,有效的,立即的,禁用的,只读的,呈现的,等等。这基本上只由一个隐藏的输入字段引用,而不是像那个教程所暗示的那样由多个字段引用。该隐藏输入字段

我试图理解JSF的生命周期,并阅读了以下教程:

它说:

该视图包含所有GUI组件,并且有大量 由JSF进行状态管理,以跟踪视图的状态–通常 使用HTML隐藏字段

我不知道JSF应用程序是在与客户机交互期间保持托管bean的状态,还是使用HTML隐藏字段来模拟有状态bean

术语“JSF状态”与托管bean属性(模型值)无关。它涉及UI组件属性,例如
必需的
有效的
立即的
禁用的
只读的
呈现的
,等等。这基本上只由一个隐藏的输入字段引用,而不是像那个教程所暗示的那样由多个字段引用。该隐藏输入字段的名称中带有
javax.faces.ViewState
前缀

从技术上讲,JSF管理的bean总是有状态的。状态性通过是否具有可变实例变量来表示。Javabeans基本上总是可变的,因此是有状态的。但是,JSF管理的bean状态不存储在“JSF状态”中。JSF管理的bean只存储在服务器的内存中,通常作为HTTP请求、会话或应用程序的属性

另见:


与具体问题无关,您正在阅读的教程是针对JSF 1.x的。JSF2.x是5年前引入的。对于开发人员教程,请始终注意发布日期以及它处理的版本。您可以从开始。

,。我知道我的问题不在本主题范围内,但由于我相信您的建议,我想知道您对使用JSF可视化编辑器是否是一种好的做法的看法?提前谢谢