# MiniMQ **Repository Path**: lxihaa/mini-mq ## Basic Information - **Project Name**: MiniMQ - **Description**: 一个简单的java-mq程序,开箱即用。 - **Primary Language**: Unknown - **License**: WTFPL - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2023-05-15 - **Last Updated**: 2023-05-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Mini-MQ 一个简单的mq程序,开箱即用。 ## 一、快速开始 ### 1.引入依赖 ```xml com.uhu minimq 1.0 ``` ### 2.注册一个消息主题 参数1:主题 参数2:消息消费者 ```java // 注册一个主题和消息处理 SubjectRegistry.register("吃饭", (message) -> System.out.println(LocalDateTime.now() + "|收到消息:吃" + message.getContent())); ``` ### 3.创建消息对象 #### (1)普通消息 ```java /** * 字符消息 */ static class MyMessage extends SimpleMessage { /** * 全参构造方法 * @param subject 主题 * @param content 消息内容 */ public MyMessage(String subject, String content) { super(subject, content); } } ``` #### (2)延时消息 ```java static class MyDelayedMessage extends AbstractDelayedMessage { /** * 延时消息构造方法 * @param subject 主题 * @param content 消息内容 * @param delayedTime 延时时间 * @param timeUnit 延时时间单位 */ public MyDelayedMessage(String subject, String content, Long delayedTime, ChronoUnit timeUnit) { super(subject, content, delayedTime, timeUnit); } } ``` ### 4.发送消息 ```java // 发送消息 for (int i = 0; i < 100; i++) { MessageSender.send(new MyMessage("吃饭", "拉面")); } // 发送延时消息 for (int i = 0; i < 10; i++) { MessageSender.send(new MyDelayedMessage("吃饭", LocalDateTime.now() + "时做的的拉面", i + 1L, ChronoUnit.SECONDS)); } ```