diff --git a/ifishMQ.iml b/ifishMQ.iml index 9e87c72..4ebb9b6 100644 --- a/ifishMQ.iml +++ b/ifishMQ.iml @@ -27,13 +27,23 @@ - + + + + + + + + + + + @@ -49,18 +59,17 @@ - + - - + \ No newline at end of file diff --git a/pom.xml b/pom.xml index c333bf8..8b43526 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ 4.0.0 com.ifish7 - ifish7.ifishMQ + ifishMQ 1.0.0-SNAPSHOT war @@ -32,6 +32,19 @@ test + + + com.aliyun + aliyun-java-sdk-push + 3.10.1 + + + com.aliyun + aliyun-java-sdk-core + [4.3.2,5.0.0) + + + org.apache.activemq diff --git a/src/main/java/com/ifish7/mq/Main.java b/src/main/java/com/ifish7/mq/Main.java deleted file mode 100644 index ee3474d..0000000 --- a/src/main/java/com/ifish7/mq/Main.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.ifish7.mq; - -/** - * @author: yan.y - * @Description: - * @Date: Created in 14:33 2018/11/18 - * @Modified by: - */ -public class Main { -} diff --git a/src/main/java/com/ifish7/mq/activemq/ConsumerService.java b/src/main/java/com/ifish7/mq/activemq/ConsumerService.java deleted file mode 100644 index 54cb4e8..0000000 --- a/src/main/java/com/ifish7/mq/activemq/ConsumerService.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.ifish7.mq.activemq; - -import javax.annotation.Resource; -import javax.jms.Destination; -import javax.jms.JMSException; -import javax.jms.TextMessage; - -import org.springframework.jms.core.JmsTemplate; -import org.springframework.stereotype.Service; - -import java.util.ArrayList; -import java.util.List; - - -@Service -public class ConsumerService { - - @Resource(name="jmsTemplate") - private JmsTemplate jmsTemplate; - - /** - * 接收消息 - * @param destination - * @return - */ - public TextMessage receive(Destination destination) { - TextMessage tm=(TextMessage)jmsTemplate.receive(destination); - List list = new ArrayList<>(); - try { - System.out.println("从队列--"+destination.toString()+"--接收到消息---"+tm.getText()); - } catch (JMSException e) { - e.printStackTrace(); - } - return tm; - } -} diff --git a/src/main/java/com/ifish7/mq/activemq/listener/QueueMessageListener.java b/src/main/java/com/ifish7/mq/activemq/listener/QueueMessageListener.java deleted file mode 100644 index 39fe62a..0000000 --- a/src/main/java/com/ifish7/mq/activemq/listener/QueueMessageListener.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.ifish7.mq.activemq.listener; - -import javax.jms.JMSException; -import javax.jms.Message; -import javax.jms.MessageListener; -import javax.jms.TextMessage; - -import org.apache.activemq.store.journal.JournalTransactionStore.Tx; - -public class QueueMessageListener implements MessageListener{ - - @Override - public void onMessage(Message message) { - - TextMessage tm = (TextMessage) message; - try { - System.out.println("收到的消息-----"+tm.getText()); - } catch (JMSException e) { - e.printStackTrace(); - } - - } - -} diff --git a/src/main/java/com/ifish7/mq/mqtt/client/ClientMqttMessageListener.java b/src/main/java/com/ifish7/mq/mqtt/client/ClientMqttMessageListener.java new file mode 100644 index 0000000..d6dbf2d --- /dev/null +++ b/src/main/java/com/ifish7/mq/mqtt/client/ClientMqttMessageListener.java @@ -0,0 +1,46 @@ +package com.ifish7.mq.mqtt.client; + +import lombok.extern.log4j.Log4j; +import org.springframework.jms.listener.SessionAwareMessageListener; + +import javax.jms.*; + +/** + * @author: yan.y + * @Description: 客户端(android,IOS) mqtt消息监听 + * @Date: Created in 23:21 2019/4/8 + */ +@Log4j +public class ClientMqttMessageListener implements SessionAwareMessageListener { + @Override + public void onMessage(BytesMessage message, Session session) { + try { + Destination destination = message.getJMSDestination(); + String topic = destination.toString(); + long length = message.getBodyLength(); + byte[] b = new byte[(int) length]; + message.readBytes(b); + String s = new String(b); + log.info("Mqtt - message : " + s); + log.info("Mqtt - Topic : " + topic); + } catch (JMSException e) { + log.error(e.getMessage(),e); + } + } + + public String bytesToHexString(byte[] src){ + StringBuilder stringBuilder = new StringBuilder(); + if (src == null || src.length <= 0) { + return null; + } + for (int i = 0; i < src.length; i++) { + int v = src[i] & 0xFF; + String hv = Integer.toHexString(v); + if (hv.length() < 2) { + stringBuilder.append(0); + } + stringBuilder.append(hv); + } + return stringBuilder.toString(); + } +} diff --git a/src/main/java/com/ifish7/mq/queues/listener/IfishDataQueueMessageListener.java b/src/main/java/com/ifish7/mq/queues/listener/IfishDataQueueMessageListener.java new file mode 100644 index 0000000..a0e4c3c --- /dev/null +++ b/src/main/java/com/ifish7/mq/queues/listener/IfishDataQueueMessageListener.java @@ -0,0 +1,31 @@ +package com.ifish7.mq.queues.listener; + +import lombok.extern.log4j.Log4j; + +import javax.jms.JMSException; +import javax.jms.Message; +import javax.jms.MessageListener; +import javax.jms.TextMessage; + + +/** + * @author: yan.y + * @Description: 数据推送队列监听 + * @Date: Created in 21:24 2019/4/8 + */ +@Log4j +public class IfishDataQueueMessageListener implements MessageListener{ + + @Override + public void onMessage(Message message) { + + TextMessage tm = (TextMessage) message; + try { + log.info("Ifish7 - Data : " + tm.getText()); + } catch (JMSException e) { + log.error(e); + } + + } + +} diff --git a/src/main/java/com/ifish7/mq/queues/listener/IfishPushQueueMessageListener.java b/src/main/java/com/ifish7/mq/queues/listener/IfishPushQueueMessageListener.java new file mode 100644 index 0000000..7c86b0d --- /dev/null +++ b/src/main/java/com/ifish7/mq/queues/listener/IfishPushQueueMessageListener.java @@ -0,0 +1,27 @@ +package com.ifish7.mq.queues.listener; + +import lombok.extern.log4j.Log4j; + +import javax.jms.JMSException; +import javax.jms.Message; +import javax.jms.MessageListener; +import javax.jms.TextMessage; + +/** + * @author: yan.y + * @Description: 消息推送队列监听 + * @Date: Created in 21:24 2019/4/8 + */ +@Log4j +public class IfishPushQueueMessageListener implements MessageListener { + + @Override + public void onMessage(Message message) { + TextMessage tm = (TextMessage) message; + try { + log.info("Ifish7 - Push : " + tm.getText()); + } catch (JMSException e) { + log.error(e); + } + } +} diff --git a/src/main/resources/log4j.properties b/src/main/resources/log4j.properties index ef3de12..3c68054 100644 --- a/src/main/resources/log4j.properties +++ b/src/main/resources/log4j.properties @@ -4,15 +4,15 @@ log4j.appender.Console=org.apache.log4j.ConsoleAppender log4j.appender.Console.Target=System.out #\u53EF\u4EE5\u7075\u6D3B\u5730\u6307\u5B9A\u65E5\u5FD7\u8F93\u51FA\u683C\u5F0F\uFF0C\u4E0B\u9762\u4E00\u884C\u662F\u6307\u5B9A\u5177\u4F53\u7684\u683C\u5F0F log4j.appender.Console.layout = org.apache.log4j.PatternLayout -log4j.appender.Console.layout.ConversionPattern=[%c] - %m%n +log4j.appender.Console.layout.ConversionPattern=[ifishMQ][%c] - %m%n #\u6587\u4EF6\u5927\u5C0F\u5230\u8FBE\u6307\u5B9A\u5C3A\u5BF8\u7684\u65F6\u5019\u4EA7\u751F\u4E00\u4E2A\u65B0\u7684\u6587\u4EF6 log4j.appender.File = org.apache.log4j.RollingFileAppender #\u6307\u5B9A\u8F93\u51FA\u76EE\u5F55 -log4j.appender.File.File = logs/dnkx.log +log4j.appender.File.File = logs/ifishMQ.log #\u5B9A\u4E49\u6587\u4EF6\u6700\u5927\u5927\u5C0F -log4j.appender.File.MaxFileSize = 10MB +log4j.appender.File.MaxFileSize = 100 #\u8F93\u51FA\u6240\u4EE5\u65E5\u5FD7\uFF0C\u5982\u679C\u6362\u6210DEBUG\u8868\u793A\u8F93\u51FADEBUG\u4EE5\u4E0A\u7EA7\u522B\u65E5\u5FD7 log4j.appender.File.Threshold = ALL log4j.appender.File.layout = org.apache.log4j.PatternLayout -log4j.appender.File.layout.ConversionPattern =[%p] [%d{yyyy-MM-dd HH\:mm\:ss}][%c]%m%n \ No newline at end of file +log4j.appender.File.layout.ConversionPattern =[ifishMQ][%p] [%d{yyyy-MM-dd HH\:mm\:ss}][%c]%m%n \ No newline at end of file diff --git a/src/main/resources/mq.properties b/src/main/resources/mq.properties new file mode 100644 index 0000000..2409198 --- /dev/null +++ b/src/main/resources/mq.properties @@ -0,0 +1,5 @@ +broker_url=tcp://localhost:61616 +username=admin +password=admin +queue_data_name=ifishDataMq +queue_push_name=ifishPushMq \ No newline at end of file diff --git a/src/main/resources/spring-mq.xml b/src/main/resources/spring-mq.xml index fa0622f..2868adb 100644 --- a/src/main/resources/spring-mq.xml +++ b/src/main/resources/spring-mq.xml @@ -8,15 +8,18 @@ http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd http://activemq.apache.org/schema/core - http://activemq.apache.org/schema/core/activemq-core-5.14.1.xsd"> - - - + http://activemq.apache.org/schema/core/activemq-core-5.14.1.xsd"> + + + + + + brokerURL="${broker_url}" + userName="${username}" + password="${password}" /> - - + + - ifishDataMq + ${queue_data_name} - - - - - - - - + + + + + ${queue_push_name} + - + - - - - + + + + - - + + - \ No newline at end of file + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/lib/commons-logging-1.0.3.jar b/src/main/webapp/WEB-INF/lib/commons-logging-1.0.3.jar deleted file mode 100644 index b99c937..0000000 Binary files a/src/main/webapp/WEB-INF/lib/commons-logging-1.0.3.jar and /dev/null differ diff --git a/src/main/webapp/WEB-INF/lib/gson-2.3.jar b/src/main/webapp/WEB-INF/lib/gson-2.3.jar deleted file mode 100644 index a7f7ce5..0000000 Binary files a/src/main/webapp/WEB-INF/lib/gson-2.3.jar and /dev/null differ diff --git a/src/main/webapp/WEB-INF/lib/httpcore-4.2.jar b/src/main/webapp/WEB-INF/lib/httpcore-4.2.jar deleted file mode 100644 index 20214ea..0000000 Binary files a/src/main/webapp/WEB-INF/lib/httpcore-4.2.jar and /dev/null differ