JSF2.0中的managed bean生命周期(补充)

    技术2025-08-04  19

    我们为什么要讨论managed bean的生命周期呢?

    原因在于JSF2.0中的data即数据,都是从managed bean中取出来和放进去的。

     

    managed bean的生命周期即此bean可以生存多久,bean上的数据可以保存多久。

     

    关于数据保存有两种方式

    一,控制 managed bean的生命周期,使bean活着,数据不丢失。

    二,是每次提交数据 和 事件listener被触发的时候,表单<h:form></h:form>中的数据都会提交到bean生成managed bean

    这样给人一种错觉,好像之前的bean还活着因为数据还在呀!其实不然,是new了新的bean只不过数据被重新注入了,给人的错觉就像还在使用原来的bean一样。你可以看到没有被<h:form></h:form>包括的范围内的bean的数据,bean的数据都初始化了。

     

    这也是@ViewScoped诞生的原因,当然你也可以通过 把需要的数据全都放到<h:form></h:form>中来替代@ViewScoped

    最新回复(0)