Spring Web Flow 2.0入门 - 用Unified EL实现业务逻辑 - 编程入门网
Spring Web Flow 2.0入门 - 用Unified EL实现业务逻辑时间:2011-02-01 IBM 吕焱飞到现在为止,这个购物车应用只是实现了页面之间的跳转,接下来我们要实现与业务逻辑相关的功能。由于本教程的重点在于介绍如何应用 Spring Web Flow ,所实现的业务比较简单,与实际应用有较大的距离,请读者谅解。 业务的逻辑涉及到数据的获取、传递、保存,相关的业务功能函数的调用等内容,这些功能的实现都可用 Java 代码来完成,但定义 Spring Web Flow 的语法与 Java 是无关的,这就要求 Spring Web Flow 提供与 Java 代码的整合机制。要了解这种机制,关键在于搞清楚两个问题: 业务逻辑代码在什么时候被调用? 业务逻辑代码在调用后得到的数据如何保存、传递? 业务逻辑代码在什么时候被调用? 在 Spring Web Flow 中,业务逻辑代码的执行可由以下三种情形来触发: 客户端请求中包含了 _eventId 参数 执行到框架自定义的切入点 执行到 <action-state> 元素 客户端请求中包含了 _eventId 参数 这种方式一般用在 state 之间的 transition ,通过指定 _eventId 参数的值,表明了客户的行为,从而导致相应事件的发生,在 Spring Web Flow 的定义文件中可以通过 evaluate 元素来指定要处理的业务逻辑。参看清单21: 清单 21 transition 示例
清单 21 的代码表示,当客户端的请求中包含“ _eventId=submit ”,则 evaluate 元素中 expression 属性所指明的表达式会被执行,即 validator 对象的validate 方法会得到调用。 执行到框架自定义的切入点 Spring Web Flow 定义了 5 个切入点,通过 flow 定义文件的配置,可在这 5 个切入点插入相关业务逻辑代码。 表 2 Spring Web Flow 自定义的切入点
Spring Web Flow 2.0入门 - 用Unified EL实现业务逻辑(2)时间:2011-02-01 IBM 吕焱飞清单 22 给出了在 view render 切入点插入业务逻辑代码的例子: 清单 22 on-render 元素
执行到 <action-state> 元素 Spring Web Flow 中的这个 <action-state> 是专为执行业务逻辑而设的 state 。如果某个应用的业务逻辑代码即不适合放在 transition 中由客户端来触发,也不适合放在 Spring Web Flow 自定义的切入点,那么就可以考虑添加 <action-state> 元素专用于该业务逻辑的执行。示例代码参看清单23: 清单 23 action-state 示例
|
||||||||||||||||||
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |