Ket*_*tan 4 spring spring-mvc spring-integration
我正在开发Web应用程序,同样在我的产品中我们也提供金融非金融移动服务.
详细介绍.
在我的Web应用程序中,没有什么比一步一步维护流程,简单的所有CRUD操作,目前我们使用的Spring MVC符合我们的要求,但对于基于移动的服务,我们提供类似的消息总线支持来交换背负信息.客户端和服务器,我们有自定义代码来实现解决方案.
此外,我们的移动服务需要通过SOAP,REST等不同协议公开,同时需要将通信数据包与服务分离.
我们仅使用SPRING MVC解决了上述所有问题.
我的问题是
Spring Integration以Enterprise Integration Patterns为模型,可以最好地将其视为支持Message Driven Architecture.Spring MVC的历史和起源是为类似于Struts的MVC模式提供解决方案,主要以线性方式公开服务支持的模型和控制视图.Spring MVC的核心之一是允许JSP页面(View)访问的模型的动态填充.所有这些都是Web App的定位和结束.
随着服务(Web,RESTful)的发展,Spring MVC填补了空白并不断扩展以支持HTTP访问服务,尽管这是其职责的扩展,而不是第一个起源.同时,Spring Integration的设计理念是处理消息和消息与服务的交互,而不依赖于访问它的协议.要启用不同的协议,可以使用不同的端点来公开相同的服务.例如,我可以将我的crud服务构建在POJO中,通过Service Activator公开,现在可用于许多不同的协议,包括REST,HTTP,Web服务,Twitter,XMPP聊天服务,RMI,TCP等.
简而言之,Spring MVC == HTTP访问,Spring Integration ==消息访问(来自HTTP,文件,数据库等)
要在Spring Integration中通过HTTP公开服务,请使用HTTP端点.通常在请求/响应(比如从数据库读取)中,您将要使用它<int-http:inbound-gateway/>,它看起来像这样;
<int-http:inbound-gateway request-channel="request.channel" reply-channel="reply.channel"
path="/myService" supported-methods="GET"/>
<int:channel id="request.channel"/>
<int:service-activator input-channel="request.channel" ref="myService"/>
<int:channel id="output.channel"/>
Run Code Online (Sandbox Code Playgroud)
(要记住的关键点是以下......
<bean class="org.springframework.integration.http.inbound.UriPathHandlerMapping"/>
Run Code Online (Sandbox Code Playgroud)
这有助于path将入站网关的属性映射到servletdispatcher)
| 归档时间: |
|
| 查看次数: |
2888 次 |
| 最近记录: |