Spring Web Flow 2.0入门 - 用Unified EL实现业务逻辑 - 编程入门网
em(productService.getProduct(productId))"/>
<transition to="productAdded"/>
</action-state>
业务逻辑代码在调用后得到的数据如何保存、传递? Spring Web Flow 的定义中可直接使用表达式语言( Expression Language ),前面的代码都是用的 Unified EL ,对于习惯用 OGNL 的开发人员,可通过 flow-builder-services 的配置改成使用 OGNL 。不管是哪一种表达式语言, Spring Web Flow 都提供了一些固定名称的变量,用于数据的保存、传递。在 Spring Web Flow 的解决方案 一节中,已经提到 Spring Web Flow 所着力解决的问题即是数据存取范围的问题,为此, Spring Web Flow 提供了两种比较重要的范围,一是 flow 范围,另一个是 conversation 范围。通过 flowScope 和 conversationScope 这两个变量, Spring Web Flow 提供了在这两种范围里存取数据的方法。清单 24演示了如何将业务逻辑代码执行的结果存放到flow范围中。 清单 24 flowScope 示例
Spring Web Flow 还提供了大量其他的变量,以方便数据的存取。如 viewScope 范围即是从进入 view-state 至退出 view-state 结束, requestScope 即和一般的 request 范围没什么区别,等等。另外还有一些用于获取 flow 以外数据的变量,如 requestParameters 、 messageContext 等等。具体变量的列表可参看 Spring Web Flow自带的文档。 为示例应用添加商品 接下来,我们要在示例应用的 viewCart.jsp 页面中添加商品,可按以下步骤操作: 添加 Product 类 添加 ProductService 类 修改 shopping.xml 文件 修改 viewCart.jsp 页面 Spring Web Flow 2.0入门 - 用Unified EL实现业务逻辑(3)时间:2011-02-01 IBM 吕焱飞添加 Product 类 Product 类是个普通的 JavaBean ,用于定义商品( Product )的一般属性,同时也提供了构造方法。由于会把 Product 存放于 conversationScope 中, Product 实现了 Serializable 接口。具体见清单25: 清单 25 Product 类
添加 ProductService 类 ProductService 主要提供商品列表,并能根据商品的 id 查找出该商品,由于示例较简单,这里只添加了三条纪录。见清单 26: 清单 26 ProductService 类
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |