MULE 配置文件读取和spring bean配置及扫描包

写在前面
Mule很多组件都是需要配置的,往往这些配置信息都需要放在配置文件里面,这样子才方便往后统一管理。Mule是在Spring基础上构建应用程序的,因此很多Spring的用法往往在Mule里面也是类似的。Spring注解的方便性不用说都知道,但是注解需要配合扫描包机制才能使注解正确工作。

在Flow里面读取配置文件属性
(1)properties文件需要放在/src/main/resources目录下
(2)在设计界面切换为XML文本界面,在前面添加
完成以上两步后,便可以在组件里面使用${properties_key}来获取配置文件的属性值,程序启动后Mule会自动将这些值作为组件内容设置相应组件。实际上在组件里面使用${properties_key}形式,体现到XML文本上是如下图所示。
MULE 配置文件读取和spring bean配置及扫描包_第1张图片

当然在代码里面使用@Value这种Spring注解形式相信很多人都十分熟悉。

Mule使用Spring扫描包
在Spring中,扫描包的代码一般是这种形式,那么按照上面介绍的,直接复制上去能行吗?答案是不行的,因为利用工具的xml提示没有提示context:component-scan,即使强制复制上去xml文件中,虽然没有编译器报错,但是在程序启动后将会获得以下错误:

经过一段时间的折腾,最终发现代码扫描包代码是没问题的,但是其正确位置应该放在标签
MULE 配置文件读取和spring bean配置及扫描包_第2张图片
同时上图也涉及到了spring bean在Mule里面的配置方式,总体来说语法都是一致的,只是标签需要注意放在正确的位置和正确的命名空间下,直接复制spring代码到Mule的xml文件可能会在程序中出现解析错误。

参考资料
官网spring与mule版本对应说明

你可能感兴趣的:(MULE,ESB)