|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。Oracle收购Sun后Java前途未卜。
设置好SpringWebMVC的情况后,接上去就能够往内里到场SpringWebFlow2.0的设置。不外,要弄分明SpringWebFlow2.0的设置,必需先要懂得相干的实际常识。
FlowRegistry
FlowRegistry是寄存flow的堆栈,每一个界说flow的XML文档被剖析后,城市被分派一个独一的id,并以FlowDefinition对象的情势寄存在FlowResigtry中。FlowRegistry设置体例可参看清单8。
申明
以下的示例清单中的XML设置元素默许利用了webflow名字空间,这也是SpringWebFlow习气上的名字空间,参看教程前面webflow-config.xml文件,能够更多懂得webflow名字空间。
清单8FlowRegistry的设置
<webflow:flow-registryid="flowRegistry">
<webflow:flow-locationpath="/WEB-INF/flows/shopping.xml"id=”shopping”/>
</webflow:flow-registry>
每一个flow都必需要有id来标识,假如在设置中省略,那末该flow默许的id将是该界说文件的文件名往失落后缀所得的字符串。
FlowExecutor
FlowExecutor是SpringWebFlow的一个中心接口,启动某个flow,都要经由过程这个接口来举行。从设置角度来讲,只需包管有个FlowExecutor就能够了,SpringWebFlow的默许举动已充足。默许设置参看清单9。
清单9FlowExecutor的设置
<webflow:flow-executorid="flowExecutor"/>
哪一个flow被实行了?
FlowRegistry中注册的flow大概会有多个,但后面先容过,每一个flow城市有id,没有设置的,也会有个默许值,FlowExecutor就是经由过程id来找出要实行的flow。至于这个id,则是要由用户来指定的。在默许设置情形下,假如客户端发送了以下URL哀求:
http://localhost:8080/CartApp/spring/shopping
则从SpringWebFlow的角度来看,这个URL就暗示客户想要实行一个id为“shopping”的flow,因而就会在FlowRegistry中查找名为“shopping”的flow,由FlowExecutor卖力实行。
SpringWebFlow怎样与SpringWebMVC整合在一同?
客户端发送的哀求,先会由servlet容器(本教程示例中即为Tomcat)吸收,servlet容器会找到响应的使用程序(本教程中即为CartApp),再依据web.xml的设置找到出切合映照前提的servlet来处置。SpringWebMVC中处置哀求的servlet是DispatcherServlet,假如哀求的路径满意DispatcherServlet的映照前提,则DispatcherServlet会找出SpringIoC容器中一切的HandlerMapping,依据这些HandlerMapping中婚配最好的handler(一样平常情形下都是controller,即把持器)来处置哀求。当Controller处置终了,一样平常城市前往一个view(视图)的名字,DispatcherServlet再依据这个view的名字找到响应的视图资本前往给客户端。
弄分明SpringWebMVC处置哀求的流程后,基础上就能够分明要整合SpringWebMVC与SpringWebFlow所必要的设置了。为了让客户真个哀求酿成实行某个flow的哀求,要办理以下几个成绩:
必要在某个HandlerMapping中设置卖力处置flow哀求的handler(或controller)
该handler(或controller)要卖力启动指定的flow
flow实行过程当中和实行完成后所触及的视图应出现给客户端
<p>
C++编译的是本地码,优点是启动快,而且可以精确控制资源因此可以开发很高效的程序.缺点是编程麻烦,而且容易留下安全隐患.跨平台靠源代码在各个平台间分别编译(一处编写到处编译) |
|