作用域:理解作用域和受管 Bean

  您在本教程中所创建 Web 应用采用 application 范围内个对象来统计投票数采用 session 范围内个对象来确保用户在每个会话中只能投票该应用采用个 request 范围内对象来显示用户提交投票时间该时间存储在 request 范围应用在响应被发送到客户端浏览器以后不再需要这个值

  本教程需要采用以下技术及资源

JavaServer Faces 组件/

  Java EE 平台

  当起始页出现时候选择个单选按钮并点击 Submit Vote

  浏览器显示出结果页注意结果页已经显示了您提交投票时间

  单击 Home 即返回到起始页

  由于您已经投过票 Submit Vote 是禁用

  点击 View Results

  注意结果页不再显示您投票时间这是个请求 bean 已经超出作用域而个新请求 bean 已经被举例化

  等待1分钟使会话超时然后在浏览器地址栏输入以下 URL 并按下回车来启动个新会话:http://localhost:8080/Scopes 如果没有使用默认服务器配置您可能需要将 8080 改为其它端口

  再次投票并查看结果结果中应当包含您次投票

  如果您还有其他浏览器启动那个浏览器在其地址栏键入 http://localhost:8080/Scopes 并按下回车以完成另次投票

  在第个浏览器中点击结果页中 Refresh Results

  结果中应当包含您从第 2个浏览器中提交投票

  实现更多  运用您在本教程中所学到来创建个能够提示登录名应用添加个页面来显示所有访问该 web 应用用户总数

  小结  您可以使用 application bean、 session bean 以及 request bean 来存储其它页面需要使用信息

  使用 application bean 来存储应用于所有用户会话信息例如个用于下拉列表组件静态选项列表

  使用 session bean 来存储可被整个用户会话其它页面所信息例如用户登录名

  如果您只需要下个页面所需信息请使用 request bean   注意: 如果您在个导航规则 <navigation-> 元素中包含了 <redirect> 元素您不能使用 request bean

  对于 request bean、 session bean 或者 application bean 而言个页面访问它们个属性时候它们就被例子化了

  要向 Session Bean 中添加个属性右击“大纲”窗口中 Session Bean 节点并选择“添加” > “属性”采用相同步骤可以向 Request Bean 或 Application Bean 中添加属性

Tags:  javascript作用域 java作用域 jsp作用域 作用域

延伸阅读

最新评论

发表评论