SSM整合RabbitMq

SSM整合RabbitMq

    • 引入依赖
    • 创建一个Rabbitmq配置文件(rabbit-config.xml)
    • 在配置文件spring-content.xml中引入rabbitmq的配置文件
    • 定义消息生产者类
    • 定义消息消费者
    • 定义测试接口

引入依赖

		
        
            org.springframework.amqp
            spring-rabbit
            1.3.5.RELEASE
        

创建一个Rabbitmq配置文件(rabbit-config.xml)





    
    


    
    

    
    
    
	
    

    
    
        
        	
            
            
        
    

    
    

    
    

    
    
        
        
    



在配置文件spring-content.xml中引入rabbitmq的配置文件


定义消息生产者类

/**
 * @author 消息生产者
 * @Package
 * @date 2023/10/08 15:55
 */
@Service("MessageProducer")
public class MessageProducer {

	//引入AmqpTemplate对象,配置文件中定义好绑定的交换机
    @Resource(name = "amqpTemplate")
    private AmqpTemplate amqpTemplate;

	//发送登录消息方法	
    public void sendLoginMessage(Object message) throws IOException {
        amqpTemplate.convertAndSend("queueTestKey", message);
    }

	//发送退出登录消息方法	
    public void sendOutMessage(Object message) throws IOException {
        amqpTemplate.convertAndSend("queueTestKey1", message);
    }

}

定义消息消费者

/**
 * @author 消息消费者
 * @Package
 * @date 2023/10/8 15:53
 */
public class MessageConsumer implements MessageListener {

    @Override
    public void onMessage(Message message) {
        System.out.println("message------->:" + new String(message.getBody(), Charset.forName("utf-8")));
    }
}

定义测试接口

/**
 * 接口
 */
@Controller
@RequestMapping("/api")
public class ApiController extends MyControl {

	@Autowired
    private MessageProducer messageProducer;

	@RequestMapping(value = "/getTestMq")
    @ResponseBody
    public Result getTestMq(HttpServletRequest request) throws IOException {
        messageProducer.sendLoginMessage("登录成功");
        messageProducer.sendOutMessage("退出登录");
        return Result.success("测试成功");
    }
    
}

你可能感兴趣的:(rabbitmq,java,spring)