我有一个典型的 spring-webmvc 应用程序(REST 请求映射在调用服务方法的控制器方法中),我想使用 spring-integration 来管理异步功能(例如邮件、短信、通知......)。
例如,我希望在我的数据库中插入后的服务组件以 asycn 模式在 spring-integration 上下文通道中发布消息,以便控件立即在控制器处返回以向客户端返回 http 响应。
如何在我现有的 spring-mvc 应用程序中集成“spring-integration”?
我有一个典型的 spring-webmvc 应用程序(REST 请求映射在调用服务方法的控制器方法中),我想使用 spring-integration 来管理异步功能(例如邮件、短信、通知......)。
例如,我希望在我的数据库中插入后的服务组件以 asycn 模式在 spring-integration 上下文通道中发布消息,以便控件立即在控制器处返回以向客户端返回 http 响应。
如何在我现有的 spring-mvc 应用程序中集成“spring-integration”?
只需将消息传递网关注入您的控制器。定义一个接口,声明一个<int:gateway id="toMail"/>
并使用普通的 Spring bean 注入技术将网关(作为接口的实例)注入控制器。
如果您不想等待回复;将方法返回值设置为void
,如果将第一个通道(网关的default-request-channel
)设置为Executor Channel,则消息将被移交给另一个线程,并且网关将立即返回。
配置 Executor Channel。