当前位置: 首页 > news >正文

网站建设文库 新的开始新闻门户网站源码

网站建设文库 新的开始,新闻门户网站源码,厦门建站网址费用,软件开发平台下载最近AWS公布了新的客户端库#xff0c;它实现了JMS 1.1规范 #xff0c;并使用他们的简单队列服务 #xff08;SQS#xff09;作为JMS提供者 #xff08;见杰夫巴尔的帖子在这里 #xff09;。 在我的文章中#xff0c;我将向您展示如何设置Maven项目以使用Spring Frame… 最近AWS公布了新的客户端库它实现了JMS 1.1规范 并使用他们的简单队列服务 SQS作为JMS提供者 见杰夫·巴尔的帖子在这里 。 在我的文章中我将向您展示如何设置Maven项目以使用Spring Framework来使用该库。 我们将执行以下步骤 在AWS管理控制台中创建队列 在机器上设置您的AWS凭证 设置您的Maven项目 创建Spring配置 创建Java文件以产生和接收消息 这篇文章将仅显示SQS可能性的一些基本用法但应该足以帮助您入门。 我假设您已经创建了AWS账户 并且熟悉Maven和基本的Spring设置。 在AWS管理控制台中创建队列 第一步是创建队列以便我们可以在程序中使用它。 我向您展示了如何使用管理控制台创建队列但是您也可以通过编程方式创建必要的队列。 转到管理控制台时可以选择SQS页面然后单击“创建新队列”按钮 输入队列名称并单击“创建队列”按钮以接受当前的默认设置 在机器上设置您的AWS凭证 为了能够使用Java SDK访问您的AWS资料最简单的方法是在用户的主目录中创建一个“ credentials.proeprties”文件。 在〜/ .aws / credentials对于Windows用户为C\ Users \ USER_NAME \ .aws \ credentials处创建凭据文件并在将大写的值替换为您自己的值之后保存以下行。 [default] aws_access_key_id YOUR_ACCESS_KEY_ID aws_secret_access_key YOUR_SECRET_ACCESS_KEY设置您的Maven项目 使用Maven设置项目时可以将以下依赖项添加到pom中以便能够在Spring 4中使用AWS SQS ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdnet.pascalalma.aws/groupIdartifactIdsqs-client/artifactIdversion1.0-SNAPSHOT/versionpropertiesversion.spring4.1.5.RELEASE/version.spring/propertiesdependenciesdependencygroupIdorg.springframework/groupIdartifactIdspring-core/artifactIdversion${version.spring}/version/dependencydependencygroupIdorg.springframework/groupIdartifactIdspring-context/artifactIdversion${version.spring}/version/dependencydependencygroupIdorg.springframework/groupIdartifactIdspring-jms/artifactIdversion${version.spring}/version/dependencydependencygroupIdcom.amazonaws/groupIdartifactIdamazon-sqs-java-messaging-lib/artifactIdversion1.0.0/versiontypejar/type/dependencydependencygroupIdlog4j/groupIdartifactIdlog4j/artifactIdversion1.2.17/version/dependency/dependencies /project创建Spring配置 在第一个示例中我将使用一个简单的MessageProducer和MessageConsumer类其中生产者将消息放入队列而使用者将从队列中读取一条消息。 这是模型是下文称要通过AWS作为一个“同步”的呼叫。 Spring配置如下所示 ?xml version1.0 encodingUTF-8? beans xmlnshttp://www.springframework.org/schema/beansxmlns:contexthttp://www.springframework.org/schema/contextxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsdcontext:component-scan base-packagenet.pascalalma.aws.sqs/context:component-scanbean idcredentialsProviderBean classcom.amazonaws.auth.DefaultAWSCredentialsProviderChain/bean idconnectionFactoryBuilder classcom.amazon.sqs.javamessaging.SQSConnectionFactory$Builderproperty nameregionName valueeu-west-1/property namenumberOfMessagesToPrefetch value5/property nameawsCredentialsProvider refcredentialsProviderBean//beanbean idconnectionFactory classcom.amazon.sqs.javamessaging.SQSConnectionFactoryfactory-beanconnectionFactoryBuilderfactory-methodbuild/bean idjmsTemplate classorg.springframework.jms.core.JmsTemplateproperty nameconnectionFactory refconnectionFactory/property namedefaultDestinationName refqueueName//beanbean idqueueName classjava.lang.Stringconstructor-arg valueDefaultDemoQueue//bean /beans创建Java文件以产生和接收消息 最后一步是创建必要的Java文件。 我认为它们足够简单且易于解释因此我仅在此处显示源代码。 首先我们有MessageProducer它在执行消息时将消息放入队列中 package net.pascalalma.aws.sqs;import org.apache.log4j.Logger; import org.springframework.jms.core.JmsTemplate; import org.springframework.jms.core.MessageCreator; import org.springframework.stereotype.Service;import javax.annotation.Resource; import javax.jms.JMSException; import javax.jms.Message; import javax.jms.Session; import javax.jms.TextMessage;Service(myMessageProviderService) public class MyMessageProvider {final static Logger logger Logger.getLogger(MyMessageProvider.class);Resource(name jmsTemplate)private JmsTemplate jmsTemplate;public void sendMessage(final String txt) {logger.debug(String.format(Sending message with txt: %s, txt));jmsTemplate.send(new MessageCreator() {public Message createMessage(Session session) throws JMSException {final TextMessage msg session.createTextMessage(txt);return msg;}});logger.debug(Message sent );} } 接下来是MessageConsumer在此示例中MessageConsumer在执行时仅从队列中读取一条消息 package net.pascalalma.aws.sqs;import org.apache.log4j.Logger; import org.springframework.jms.core.JmsTemplate; import org.springframework.stereotype.Service;import javax.annotation.Resource; import javax.jms.JMSException; import javax.jms.Message; import javax.jms.TextMessage;Service(myMessageConsumerService) public class MyMessageConsumer {final static Logger logger Logger.getLogger(MyMessageConsumer.class);Resource(name jmsTemplate)private JmsTemplate jmsTemplate;public void readMessage() throws JMSException {logger.debug(Reading message);Message msg jmsTemplate.receive();if (msg instanceof TextMessage) {TextMessage txtmsg (TextMessage) msg;logger.info(String.format(Received text: %s, txtmsg.getText()));}logger.debug(msg.getClass());logger.info(Done);} } 最后是Main类它读取Spring配置并运行Producer和Consumer package net.pascalalma.aws.sqs;import org.apache.log4j.Logger; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext;import javax.jms.JMSException;public class SpringMain {final static Logger logger Logger.getLogger(SpringMain.class);public static void main(String[] args) {//Build application context by reading spring-config.xmlApplicationContext ctx new ClassPathXmlApplicationContext(new String[]{application-context.xml});//Get an instance of ProductService class;MyMessageProvider prdSvc (MyMessageProvider) ctx.getBean(myMessageProviderService);MyMessageConsumer conSvc (MyMessageConsumer) ctx.getBean(myMessageConsumerService);//Call getProduct method of ProductServiceprdSvc.sendMessage(This is a test);try {conSvc.readMessage();} catch (JMSException e) {logger.error(e);}} } 当运行Main类时一切正常时您将看到以下输出 2015-03-29 10:26:39 DEBUG net.pascalalma.aws.sqs.MyMessageProvider(28) - Sending message with txt: This is a test 2015-03-29 10:26:41 DEBUG net.pascalalma.aws.sqs.MyMessageProvider(35) - Message sent 2015-03-29 10:26:41 DEBUG net.pascalalma.aws.sqs.MyMessageConsumer(24) - Reading message 2015-03-29 10:26:41 INFO net.pascalalma.aws.sqs.MyMessageConsumer(29) - Received text: This is a test 2015-03-29 10:26:41 DEBUG net.pascalalma.aws.sqs.MyMessageConsumer(32) - class com.amazon.sqs.javamessaging.message.SQSTextMessage 2015-03-29 10:26:41 INFO net.pascalalma.aws.sqs.MyMessageConsumer(33) - DoneProcess finished with exit code 0翻译自: https://www.javacodegeeks.com/2015/04/using-aws-sqs-as-jms-provider-with-spring.html
http://www.pierceye.com/news/881659/

相关文章:

  • 做排版的网站绍兴网站建设专业的公司
  • 深圳专业网站建设公司济南建设网站
  • 广西建设职业技术学院网站做的比较好的二手交易网站有哪些
  • 北辰网站建设公司wordpress79元主题
  • 网站怎么绑定织梦广东网站建设968
  • ps扩展插件网站业务平台
  • 富阳设计网站广州网站设计公司
  • 演讲网站开发背景wordpress 1h 1g
  • 广州十度网络网站开发最好网站被挂马怎么办
  • 网站建设及维护费算业务宣传费网站如何做触屏滑动效果
  • 如何查询一个网站所属的主机免费可以绑定域名网站空间
  • asp.net网站开发教程品牌型网站建设
  • 海南网站网络推广建设网站需要注意的事项
  • 营销外包网站网站类别标签文本
  • 企业概况简介解答网站内容优化策略
  • ImQQ网站是怎么做的做网站把自己做死
  • 房产网站制作流程php网站开发教程网
  • 小程序商城名字谷歌优化技巧
  • 备案的时候需要网站吗seo搜索引擎优化公司
  • 网站 空间转移wordpress后台点击菜单没反应应
  • 企业网站可以自己做国外域名交易网站
  • 龙岗网站建设费用明细国外的服务器做的网站在国外能打开在国内打不开是什么原因
  • 个人网站的设计与实现摘要东莞学校网站建设
  • 深圳建设局招标网站网站空间pdf下载不了
  • 中国网站建设服务中心百度搜索风云榜电脑版
  • 开发网站性能监控网站开发常见技术问题
  • wordpress 手风琴插件长沙网站优化联系方式
  • 上海松江水处理网站建设做网站项目
  • 长沙快速建站模板仿牌网站怎么做301跳转
  • 网站建设与管理和计算机网络技术网站运行速度慢的原因