1

我正在构建托管在 tomcat 上的 jsp 页面,并且想知道每个 jsp 中引用的 bean 实例是否是无状态/有状态的?这些 bean 实例是如何产生的?每次访问页面时是否(重新)创建它们?我是否需要担心两个不同的用户同时访问同一个页面并获得同一个 bean 实例?

一般来说,我发现jsp和bean之间的交互非常混乱,所以如果有人可以参考这些概念的教程/解释,我将不胜感激。谢谢!

PS bean 类中的静态字段怎么样?这些值是否默认具有应用范围?

4

2 回答 2

3

bean是Plain Object Java Object,bean开发的目的是存储/持久化数据。

如果每个jsp中引用的bean实例是无状态/有状态的?

默认无状态。

这些 bean 实例是如何产生的?每次访问页面时是否(重新)创建它们?

这取决于您使用的代码。

我是否需要担心两个不同的用户同时访问同一个页面并获得同一个 bean 实例?

除非您创建了一个具有应用程序范围的bean 。


关于JavaBeansJSP

于 2012-09-20T03:35:20.490 回答
0

bean 的生命周期取决于开发人员或开发人员选择使用的框架。如果您考虑跨多个页面(甚至是同一页面)的请求,除非您创建一个类的实例并将其存储在某处,否则它将是无状态的。这就是 Java EE 会话管理发挥作用的地方,因此如果您想要有状态的行为,您将创建 bean 的一个实例并将其“持久化”到会话中。

如果您确实坚持会话,则不必担心多个用户访问应用程序,因为会话对于每个用户都是唯一的,并且 Java EE 会尝试确保这一点。

于 2012-09-20T03:40:00.703 回答