在 2025 收官前,看清 Data + AI 的真实走向,点击查看 BUILD 大会精华版 了解详情
写点什么

了解 Seam 的嵌套对话和超时

  • 2008-01-17
  • 本文字数:812 字

    阅读完需:约 3 分钟

对 Web 应用开发人员来说,状态管理一直是一个挑战。对话应该在应用层而不是请求层来处理交互。Jacob Orshalick 以 Seam 的酒店预订示例应用为例,论述了 Seam 的对话模型,并解释了如何将嵌套对话运用于该示例。

Seam 的对话模型提供了一个简化方法来处理 continuations。如果你熟悉 continuation server 的概念,你就知道它们提供了包括无缝后退按钮处理和自动状态管理在内的功能。一个用户会话有很多 continuations,它们是执行过程中简单的状态快照,可在任何时候恢复。如果你对这个概念不熟悉,别担心,Seam 使其变得很简单。

这只是模型的一部分,Seam 还允许对话的嵌套:

嵌套对话提供了一个状态容器,它堆叠在最早的对话或外部对话的状态容器之上。任何在嵌套对话状态容器中设置的对象,都不影响可从父对话状态容器中访问的对象。这就允许每个嵌套对话能保持其自己独有的状态。

Orshalick 从定义嵌套对话到确保它被妥善地清空一路演示下来。他用 JBoss Developer Studio 来扩展 Seam 的酒店预订示例应用,生动地完成了嵌套对话的讲解。

Jacob Orshalick 不止澄清了嵌套对话,他还讨论了对话超时的话题:

对话超时似乎是一个普遍被误解的 Seam 概念。在 Seam 论坛上,我常常看见一些帖子宣称对话超时不起作用。实际上它工作得很正常,只不过你必须去理解它的语义。

Orshalick 用与嵌套对话相同的例子说明了,在处理多对话时,只有后台对话会受到对话超时的影响。照这样来说,只有会话本身超时时,前台对话才会超时。

Orshalick 最后总结到:

通过其简单的对话模型,Seam 提供了一个非常有吸引力的方法来管理状态。过去开发人员艰难处理的复杂问题,包括多窗口操作和后退按钮处理,都能处理得天衣无缝了。

查看英文原文 Understanding Seam Nested Conversations and Timeouts - - - - - -

译者简介: 王丽娟(Ivy Wang),一个快乐的程序员,持续从事 Java EE 中间件和 Java EE 企业应用的开发,关注软件架构技术。职业目标是成长为一名优秀的架构师。

2008-01-17 21:481390
用户头像

发布了 151 篇内容, 共 69.8 次阅读, 收获喜欢 18 次。

关注

评论

发布
暂无评论
发现更多内容

RocketMQ msgId与offsetMsgId释疑(实战篇),腾讯技术官发布的“神仙文档”火爆网络

爱好编程进阶

Java 面试 后端开发

众妙之门玄之又玄,游戏系统中的伪随机(Pseudo-Randomization)和真随机(True-Randomization)算法实现Python3

刘悦的技术博客

算法 游戏 Python3 算法实践 随机数

CrashSight 常规功能&特色功能介绍

WeTest

全网征集!说说你跟宜搭之间的故事吧

一只大光圈

阿里 低代码 数字化 钉钉宜搭 宜搭

设计千万级学生管理系统的考试试卷存储方案

哈喽

「架构实战营」

2022年,网传苹果即将发布的新机型iPhone 14 Pro和iPhone 14 Pro Max将会是全新屏幕造型,不再是刘海屏,你对新屏幕造型的iPhone 14期待吗?

InfoQ IT百科

Spring Boot 实战 :入门篇,想给金三银四找工作的程序员几点建议

爱好编程进阶

Java 面试 后端开发

如何进行项目协同管理

阿里云云效

阿里云 项目管理 敏捷开发 项目协同 研发协作

数学史有没有必要读?关于数学教育,我们忽视了太多

图灵教育

数学 数学史 数学教育

企业级知识管理(KM)建设方法及过程

小炮

知识管理

报名开启|QKE 容器引擎托管版暨容器生态发布会!

青云技术社区

面向全球市场,PlatoFarm今日登录HUOBI等全球四大平台

小哈区块

如何通过云效Codeup完成代码合并 | 云效

阿里云云效

云计算 阿里云 代码管理 Codeup 代码合并

科创人·派拉软件CEO谭翔:零信任本质是数字安全,To B也要深研用户心智

科创人

企业级知识管理(KM)建设方法及过程

小炮

知识管理

社区运营书籍推荐

坚果

4月月更

Rust异步框架的性能评估

非凸科技

tokio Zenoh 异步框架 async_std smol

对线郭老师职业发展,记下自己的心得体会

北洋

面试 职业规划 程序猿 4月月更

Go 学习笔记——Switch(我不是游戏机)

为自己带盐

Go 学习笔记 4月月更

为什么智能手机传感器市场一直是索尼占主导

InfoQ IT百科

Kotlin的扩展函数知识点

北洋

kotlin andiod 4月月更

悟空的私藏「架构』书籍推荐

悟空聊架构

4月日更 悟空聊架构

敏捷实践 | 提高小组可预测性的敏捷指标

LigaAI

敏捷开发 敏捷度量

2022年,5G芯片会有哪些值得期待的发展趋势?

InfoQ IT百科

开源大数据OLAP引擎最佳实践

五分钟学大数据

数仓 4月月更

这个API Hub厉害了,收录了钉钉企业微信等开放Api,还能直接调试 !

Liam

前端 Postman API OpenAPI 开放api

坚持做正确的事情

FunTester

Redis面试题汇总,mysql索引优化面试题常问

爱好编程进阶

Java 面试 后端开发

Spring Boot在微服务中的最佳实践!,作为Java程序员都应掌握

爱好编程进阶

Java 面试 后端开发

了解Seam的嵌套对话和超时_Java_Bryan Clauser_InfoQ精选文章