1、Mule环境搭建

首先,下载安装包mule standalone download:https://repository.mulesoft.org/nexus/content/repositories/releases/org/mule/distributions/mule-standalone/

其次,解压到指定路径:D:\mule

接着配置环境变量:

在系统变量中新建MULE_HOME变量,值为安装路径D:\mule

在系统变量Path中添加mule路径:%MULE_HOME%\bin

验证是否配置成功:打开cmd 输入mule

参考网站https://blog.csdn.net/weixin_36833780/article/details/88777377

MuleESB实例

  1. 下载AnypointStudio开发工具

https://www.mulesoft.com/platform/studio

此工具和eclipse比较像,就是对eclipse又进行了一次封装。

  1. Mule中的思想:

2.1 Flow:

流,也就是消息流是由接收消息,处理消息,为消息选择路径等一系列组件组成的。它是mule中的核心思想,十分重要。

流中可以依据功能划分为三大类:

Message processor(消息处理器):对消息进行加工处理,如filter,transformer,router等。

Message source(消息源):flow开始的地方,接收消息进入流中,触发处理器,如:Inbound/Outbound Endpoints。

Component(组件):主要实现一些特殊的功能,mule studio中提供的完成不了的。

Mule Message:

消息,是通过整个应用程序可能流经很多flow。它有两个重要的组成部分:

2.2 Message header:

包含该消息的基本的元数据。元数据是由属性(properties)和变量(variables)组成,元数据可以为我们提供有用的信息,譬如告诉我们这个消息去向哪里。元数据都有一个特定的范围来规定它的生命周期。

2.3 Endpoints(端点):

用来接收和发送数据,负责连接外部资源并发送数据。分为Inbound endpoints输入端点,Outbound endpoints输出端点。端点需要关联一个connector连接器完成输入输出。如果没有配置连接器系统会默认配置一个。

2.4 Scopes(范围):

可以理解为用这里的元素可以将某一些元素规划成一个整体,一个系统分成各个组成部分。这里有Async(异步),flow(流),foreach(循环),sub-flow(子流)等。

2.5 Components(组件):

用来处理一些特殊的业务逻辑的元素,当你想将传来的消息message,进行特定的处理,筛选,都可以使用这里的组件。Echo就是在这里分类里。Expression表达式,是一个很有用的元素。这里支持很多语言,script,python,ruby,groovy等等。

2.6  MEL语法:

这是一个非常灵活的工具,你可以使用MEL完成各样的表达式,譬如:常量,简单的运算,操作复杂的数据结构或者调用对象的方法;你还可以使用它运算regex和xpath函数。

2.7 Transformers(转换器):

在消息传输过程中,各元素可能接受数据的格式不同,我们需要将数据转换到元素希望接受的格式,这个时候我们就要用上转换器了。Mule中提供了很多样式的已经封装好的转换器供我们使用,如果没有合适的我们也可以自己定义转换器。

2.8  Filtes(过滤器):

顾名思义,就是过滤掉不需要的信息,保留需要的信息。Mule同样为我们提供了多样已经封装好的过滤器。有异常过滤器,表达式过滤器,信息属性过滤器,负载过滤器,引用全局过滤器。

2.9  Flow control(路径控制):

用来控制信息流的流向,这里有Splitter将信息根据条件拆分,并发送给相应的后续处理,All,Choice是将信息全部发送或者根据条件有选择的发送出去,还提供了很多路径控制方案。

具体详细介绍见:https://blog.csdn.net/sky302761277/article/details/51062264

3、简单应用

打开AnypointStudio开发工具,右键new→Mue Project,如下图:

工程结构图如下:

打开工程下firstproject.xml,在右侧Mule Palette 找到flow ,拖动到xml当中,操作如下图:

紧着着在右侧Mule Palette 搜索HTTP,拖动到刚才创建的flow中,操作如下图:

做如下配置:

在右侧Mule Palette 搜索Set Payload,拖动到刚才创建的flow中,操作如下图:

到此一个简单的应用程序已经创建好,接下来测试一下;

4、测试

在工程右击,选择Run as → Mule Application ,控制台就可以看到程序已经启动了,

启动完后 在页面输入测试地址:localhost:8082/   ,输出结果如下图

5、工程打包

查看网上一些教程说,这里导出的是zip格式,可我导出的是jar格式的。

把包复制到Mule的apps下:

Windows系统下启动方式:进入bin文件夹下,双击mule.bat

这时apps的jiar包会自动解压成文件

输入测试地址:localhost:8082/测试结果和上边是一样的。

Mule ESB介绍及使用相关推荐

  1. Mule ESB 介绍

    1. 简介 Mule ESB是一个基于Java的轻量级企业服务总线和集成平台,允许开发人员快速便利地连接多个应用,并支持应用间的数据交换.Mule ESB支持集成现有系统而无论其底层采用何种技术,如J ...

  2. Mule ESB基本介绍

    Mule ESB基本介绍 Mule ESB是世界上使用最广泛的开源企业服务总线(ESB)产品,已拥有超过数百万的下载量,以及来自世界各地数十万个开发人员,很多世界五百强企业选择Mule ESB作为企业 ...

  3. 关于MULE ESB相关的介绍

    1. 简介 Mule ESB是一个基于Java的轻量级企业服务总线和集成平台,允许开发人员快速便利地连接多个应用,并支持应用间的数据交换.Mule ESB支持集成现有系统而无论其底层采用何种技术,如J ...

  4. Mule ESB 3.3与CloudHub

    MuleSoft最近发布了企业服务总线(ESB)产品Mule ESB 3.3.在新版本中,除了应用程序集成之外,Mule ESB还拥有了数据集成功能:从而为开发者提供了一个面向本地或云端应用的集成解决 ...

  5. EnjoyingSoft之Mule ESB开发教程第六篇:Data Transform - 数据转换

    目录 1. 数据转换概念 2. 数据智能感知 - DataSense 3. 简单数据转换组件 3.1 Object to JSON 3.2 JSON to XML 3.3 JSON to Object ...

  6. 使用Mule ESB与Groovy编排RESTful服务【转】很适合我们当前的架构

    http://www.infoq.com/cn/articles/restful-services-mule 在过去几年中,REST风格的软件架构获得了越来越多的认可,这主要是因为它减少了系统对动件的 ...

  7. EnjoyingSoft之Mule ESB开发教程第二篇:Mule ESB基本概念

    目录 1. 使用Anypoint Studio开发 2. Mule ESB Application Structure - Mule ESB应用程序结构 3. Mule ESB Application ...

  8. Mule ESB开发与学习

    今天依旧是公司让调研,嗯嗯,学无止境 还是上次的问题,由于公司用了IBM的IIB,价格比较昂贵,所以调研一个开源的ESB用于小项目来使用,既然是小项目,估计也就用不到高可用这种集群模式了,所以老板让我 ...

  9. MULE ESB中custom,flows,connectors等的使用方法

    1. how to work 当你去检查一个消息在mule esb当中 是如何流动的时候,你回发现整个架构中存在着三个层面:应用层,整合层,以及传输层.. 同样,在mule 开发中也有三种不同类型任务 ...

最新文章

  1. System V IPC之共享内存
  2. 4. Spring 如何通过 XML 文件配置Bean,以及如何获取Bean
  3. php.ini开启命名空间,Zend Framework教程之模型Model基本规则和使用方法
  4. cnn加工是什么意思_天秤座R-CNN:全面平衡的目标检测器
  5. OnTouchListener与OnClickListener冲突问题解决思路
  6. LNMP架构数据迁移到NFS存储
  7. 007 JVM堆内存划分
  8. poj1753 解题思路
  9. 惊叹!前NASA员工绘大型精美地面立体画(高清组图)
  10. visualDL(一)scalar标量图
  11. (二)u-boot2013.01.01 for TQ210:《Makefile分析》
  12. 配置JDK / JAVA
  13. 计时:赚一百块钱需要多长时间?
  14. Vue3 _ 11. Vue 生命周期 生命周期狗子
  15. 多机局域网办公神器 rustdesk 使用强推!!!
  16. 据挖掘中所需的概率论与数理统计知识
  17. 前后端分离的Java微信小程序B2C商城 H5+APP源码
  18. 程序员练级攻略(2018) --左耳朵耗子
  19. WebOffice常用API接口使用说明
  20. 酒店IPTV系统方案可选的有哪些?

热门文章

  1. 计算机控制技术课程配套教材习题解答(第6、7、8章)
  2. Excel四舍五入后计算不准确怎么办(与计算器不同,不一致)
  3. JAVA 学习日志之java语言概述与开发环境
  4. 加快chorme浏览器下载速度
  5. 华为v8 android 8,华为荣耀8和v8哪个好 华为荣耀8和v8区别对比【详解】
  6. 据说可以让男人看一遍就哭的文章
  7. 苹果手机无法识别new Date() 来获取的时间
  8. java 网络通讯用什么流_Java中打印流,网络通信协议,TCP通信的基础介绍
  9. 李书福造手机,图个吉利?
  10. MTi姿态传感器学习篇