当前位置: 首页 > 面试题库 >

从JSF操作返回null和“”之间的区别

赖明煦
2023-03-14
问题内容

据我了解,当JSF操作返回""(空字符串)时,用户停留在当前页面上,但视图已刷新。但是,当操作返回时null,用户仍停留在当前页面上,但旧视图已被重用。我的问题是:

  1. 上面的陈述正确(准确)吗?
  2. 如果是,那么这意味着什么?具体来说,使用一种对另一种对页面上的数据(例如,JSF UI组件中的值或存储在DataTable中的请求范围Bean中的数据)有什么影响?
  3. 在什么情况下应该使用一种而不是另一种?

问题答案:

上面的陈述正确(准确)吗?

是。除了返回,null您还可以返回void

如果是,那么这意味着什么? 具体来说,使用一种对另一种对页面上的数据(例如,JSF
UI组件中的值或存储在DataTable中的请求范围Bean中的数据)有什么影响?

没有要求的范围豆。它仅对JSF2视图作用域的bean有影响。返回null或时void,视图范围的Bean实例将保留在下一个请求中,否则将重新创建它。

在什么情况下应该使用一种而不是另一种?

如果要在后续请求中保留JSF2视图作用域的bean。

也可以看看:

  • JSF 2.0中的通信-托管bean范围


 类似资料:
  • 问题内容: 嗨,我想知道上述比较之间的区别吗? 我在检查时得到空指针异常。但是,如果我将其更改为,则效果很好。 问题答案: 和之间的区别 没有语义上的差异。 和 等价。 也许您将其与以下事实混淆了: 和 可以有所作为(因为第二种选择可能会导致NPE(如果被叫人为空)。

  • 问题内容: 从随机的php.net帖子中: 如果您正在执行$ whatever = null; 那么您正在重写变量的数据。您可能会更快地释放/缩小内存,但可能会从真正需要它们的代码中窃取CPU周期,从而导致更长的总体执行时间。 显然,这是无可争辩的真理,所以也许有人会乐于解释。 我的意思是,什么神奇地不会执行任何汇编指令,而会执行?给出的答案和说出来的一样有用 $ whatever = null会

  • 对于我的新JAVA应用程序,我希望开始使用IntelliJ创建一个新的JSF2.2项目。该项目将是一个web应用程序,并将使用Maven。

  • 本文向大家介绍Java 8中的中间操作和终端操作之间的区别,包括了Java 8中的中间操作和终端操作之间的区别的使用技巧和注意事项,需要的朋友参考一下 在Java 8中引入了Stream,它仅用于处理数据组而不用于存储元素。它不修改实际的集合,它们仅根据流水线方法提供结果。 Stream api支持多种操作,并且操作分为两部分- 中间操作—这些操作用于管道化其他方法并转换为其他流。它们不会产生结果

  • 本文向大家介绍操作系统和内核之间的区别,包括了操作系统和内核之间的区别的使用技巧和注意事项,需要的朋友参考一下 操作系统 操作系统管理计算机,并充当用户和计算机之间的接口。操作系统是启动计算机时启动的第一个程序。 核心 内核是操作系统的核心组件,负责将用户命令转换为机器级别的语言命令。 以下是操作系统和内核之间的重要区别。 序号 键 操作系统 核心 1 类型 操作系统是系统软件。 内核是操作系统的

  • 我正在学习JavaEE6教程,我不明白JSF和Facelets之间的区别。第4章有一个小节“开发一个简单的JavaServerFaces应用程序”,第5章有一个小节“开发一个简单的Facelets”应用程序,据我所知,这两个例子都使用完全相同的过程——一个. xhmtl页面用于标记,一个支持bean来保存一些数据,然后一个web.xml文件将网址映射到“FaceletsServlet”。 据我所知