书签 分享 收藏 举报 版权申诉 / 14
上传文档赚钱

类型《Spring编程技术与应用》课件19.ppt

  • 上传人(卖家):momomo
  • 文档编号:5818480
  • 上传时间:2023-05-11
  • 格式:PPT
  • 页数:14
  • 大小:273.50KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《《Spring编程技术与应用》课件19.ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    Spring编程技术与应用 Spring 编程 技术 应用 课件 19
    资源描述:

    1、19.1 CloudFoundry云平台简介 CloudFoundry 是是 VMware 发布的业内第一个开源发布的业内第一个开源 PaaS 项目。项目。CloudFoundry目前支持目前支持 Spring Java,Rails,Ruby等,也支持其他基于等,也支持其他基于JVM 的框架,如的框架,如 Groovy,Grails 等。并提供消息服务(如等。并提供消息服务(如RabbitMQ)和数据服务(如)和数据服务(如MySQL,Mongo DB等)等)19.2 在STS环境下部署Web应用到云平台1注册帐户注册帐户在在http:/ Foundry Integration Extensi

    2、on具体步骤如下:选择菜单具体步骤如下:选择菜单HelpDashboard。打开面板,点击。打开面板,点击Extensions标签,可看到标签,可看到STS加载扩展名列加载扩展名列表。向下滚动到表。向下滚动到Server and Clouds类别,类别,选择选择“Cloud Foundry Integration”。点。点击击Install,按安装向导逐步安装。,按安装向导逐步安装。3在STS添加对应云平台上的Server通过通过STS的的Server添加功能,添加一个服务器,添加功能,添加一个服务器,在服务器的类型选择中要选择来自云平台,连在服务器的类型选择中要选择来自云平台,连接服务器将需

    3、要注册的帐户和密码。在服务器接服务器将需要注册的帐户和密码。在服务器的列表中将看到的列表中将看到“VMware Cloud Foundry”的项目。在的项目。在“VMware Cloud Foundry”与云与云连接的情况下,用户使用连接的情况下,用户使用“Run At Server”运行运行Web应用程序时,如果选择来自云的服务应用程序时,如果选择来自云的服务器,则该应用将自动部署到云平台上器,则该应用将自动部署到云平台上4.CloudFoundry对Web应用的工程要求为支持为支持CloudFoundry,需要在应用的,需要在应用的pom.xml文件中添加以下依赖。文件中添加以下依赖。or

    4、g.cloudfoundry cloudfoundry-runtime 0.7.1 同时,在同时,在pom.xml文件中添加文件中添加Spring框架的框架的 Milestone远程仓库,该仓库含有远程仓库,该仓库含有cloudfoundry运行时的运行时的jar包。包。org.springframework.maven.milestone Spring Framework Maven Milestone Repository http:/maven.springframework.org/milestone 19.2.2 使用云平台的MySQL数据库1.添加和配置数据源的服务添加和配置数据源

    5、的服务在服务器的控制窗体中,选择在服务器的控制窗体中,选择“VMware Cloud Foundry”,按鼠标右键,从弹出菜单,按鼠标右键,从弹出菜单中选择中选择“Connect”实现与云的连接。然后,实现与云的连接。然后,双击双击“VMware Cloud Foundry”,在其控制,在其控制面板中,点击面板中,点击“add service”图标,可弹出如图标,可弹出如图图19-2所示的窗体,选择数据源的类型和输所示的窗体,选择数据源的类型和输入服务的名称。点击入服务的名称。点击“Finish”按钮即可。按钮即可。2.在云平台的Web应用中引用数据源(1)将数据源服务添加到将数据源服务添加到

    6、Application Services面板。面板。将将Services面板的数据源服务拖到面板的数据源服务拖到Application Services面板。面板。(2)在配置文件中指定数据源在配置文件中指定数据源 19.3 云上RabbitMQ消息通信编程 RabbitMQ 支持各种消息传递模式,包括点对点、支持各种消息传递模式,包括点对点、发布发布/订阅、多播、订阅、多播、RPC 等。等。RabbitMQ中的核心组件中的核心组件是是Exchange(交换器交换器)和和Queue(消息队列消息队列),Exchange接收来自发送者的消息、并路由信息,然后接收来自发送者的消息、并路由信息,然后

    7、将消息发给消息队列。将消息发给消息队列。Exchange和和Queue通过绑定关通过绑定关键字实现绑定。交换器通过消息的路由关键字去查找匹键字实现绑定。交换器通过消息的路由关键字去查找匹配的绑定关键字,将消息路由到被绑定的队列中去。路配的绑定关键字,将消息路由到被绑定的队列中去。路由规则是由由规则是由Exchange类型及类型及Binding来决定的。一个来决定的。一个消息的处理流程如图消息的处理流程如图19-4所示。所示。RabbitMQ的交换器RabbitMQ的交换器有的交换器有direct、topic、fanout、Headers四种四种类型。一个交换机可以绑定多个队列,一个队列可以被多

    8、个交换类型。一个交换机可以绑定多个队列,一个队列可以被多个交换机绑定。机绑定。直接交换(直接交换(direct)将消息转发到绑定关键字与路由关键字精确)将消息转发到绑定关键字与路由关键字精确匹配的队列。如图匹配的队列。如图19-5所示,所示,P代表消息生产者,代表消息生产者,C代表消息消代表消息消费者,费者,X代表交换器。假如发送消息的路由关键字为代表交换器。假如发送消息的路由关键字为black或或green将送将送Q2队列队列,路由关键字为路由关键字为orange则送则送Q1队列。队列。主题交换(主题交换(topic)按规则转发消息。可使用通配符参与路由匹)按规则转发消息。可使用通配符参与路

    9、由匹配,配,*代表一个单词,代表一个单词,#可代表可代表0到多个单词,例如,到多个单词,例如,“ab.#”匹匹配配“ab”和和“ab.x.s”,“a.*”匹配匹配“a.xy”。fanout交换器最简单,它将消息广播给所有绑定队列。交换器最简单,它将消息广播给所有绑定队列。Headers是一种基于消息头的更复杂路由交换。是一种基于消息头的更复杂路由交换。19.3.2 云上RabbitMQ配置及RabbitTemplate的使用1.工程添加工程添加Maven依赖关系依赖关系要在工程的要在工程的Maven配置中添加配置中添加Spring框架的工件标识为框架的工件标识为“spring-rabbit”的

    10、依赖包。以下为对应的依赖包。以下为对应Maven中依赖配置。中依赖配置。org.springframework.amqpspring-rabbit1.1.3.RELEASEjarcompile2.添加添加RabbitMQ服务服务和前面介绍的和前面介绍的mysql数据库服务的使用类似,数据库服务的使用类似,STS开发环境中使用开发环境中使用RabbitMQ服务,首先要服务,首先要在云服务器的在云服务器的service控制面板中添加控制面板中添加“RabbitMQ message queue”类型的服务类型的服务部件部件,并将其拖放到具体应用面板。并将其拖放到具体应用面板。3.在应用配置中定义相应

    11、Bean 4.使用AmqpTemplate或 RabbitTemplate发送和接收消息使用使用send方法发送消息的几种形态:方法发送消息的几种形态:p void send(Message message);p void send(String routingkey,Message message);p void send(String exchange,String routingKey,Message message);接受消息有同步和异步两种情形。同步接收使用接受消息有同步和异步两种情形。同步接收使用Receive方法,具体形态有方法,具体形态有2种。种。p Message Recei

    12、ve();/从默认队列接收消息从默认队列接收消息p Message Receive(String queueName);/从指定队列接受消息从指定队列接受消息异步接收消息的方法之一是利用实现异步接收消息的方法之一是利用实现MessageListener接口的消息监听器,接口的消息监听器,在其在其onMessage方法中实现消息接收处理,并将消息监听器的包裹容器定义为方法中实现消息接收处理,并将消息监听器的包裹容器定义为Bean。例如:。例如:AmqpTemplate还支持基于消息转换器(还支持基于消息转换器(Message Converter)的消息发送和)的消息发送和接收方法,可直接发送和接

    13、收对象。但要注意,这里的方法和接收方法,可直接发送和接收对象。但要注意,这里的方法和Spring JmsTemplate的形态不同。发送消息的的形态不同。发送消息的convertAndSend方法共有方法共有6种形态,种形态,最简单的形态只含消息对象最简单的形态只含消息对象1个参数,最复杂的形态则要提供交换器、路由关键个参数,最复杂的形态则要提供交换器、路由关键字、消息和消息后处理程序共字、消息和消息后处理程序共4个参数。以下列出其中个参数。以下列出其中3种方法,其他种方法,其他3种只是在种只是在最后添加有最后添加有1个个MessagePostProcessorDelegate类型的参数。类型

    14、的参数。p void convertAndSend(Object message);p void convertAndSend(String routingKey,Object message);p void convertAndSend(String exchange,String routingKey,Object message);【注意注意】对于没有用到对于没有用到Exchange的的AmqpTemplate对象,方法中的对象,方法中的routingKey参数对应消息队列名。例如,以下代码发送一条消息到参数对应消息队列名。例如,以下代码发送一条消息到“messages”队列。队列。amqpTemplate.convertAndSend(messages,hello);

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:《Spring编程技术与应用》课件19.ppt
    链接地址:https://www.163wenku.com/p-5818480.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库