12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- package producer;
- import com.alibaba.fastjson.JSON;
- import lombok.extern.slf4j.Slf4j;
- import org.apache.rocketmq.client.producer.SendCallback;
- import org.apache.rocketmq.client.producer.SendResult;
- import org.apache.rocketmq.spring.core.RocketMQTemplate;
- import org.example.producer.ProducerApplication;
- import org.example.producer.dto.StudentDTO;
- import org.junit.jupiter.api.Test;
- import org.springframework.boot.test.context.SpringBootTest;
- import org.springframework.messaging.Message;
- import org.springframework.messaging.support.MessageBuilder;
- import javax.annotation.Resource;
- @SpringBootTest(classes = ProducerApplication.class)
- @Slf4j
- public class ProducerNormalMessageTest {
- @Resource(name = "extRocketMQTemplate")
- private RocketMQTemplate extRocketMQTemplate;
- /**
- *发送单向消息
- */
- @Test
- public void sendOneWay(){
- StudentDTO studentDTO = new StudentDTO();
- studentDTO.setId("T001");
- studentDTO.setName("丽莎");
- studentDTO.setAge(12);
- Message<String> message = MessageBuilder.withPayload(JSON.toJSONString(studentDTO)).setHeader("KEYS", studentDTO.getId()).build();
- extRocketMQTemplate.sendOneWay("studentTopic".concat(":ESS"),message);
- }
- @Test
- public void sendOneWayOrderly(){
- StudentDTO studentDTO = new StudentDTO();
- studentDTO.setId("T005");
- studentDTO.setName("里斯");
- studentDTO.setAge(12);
- Message<String> message = MessageBuilder.withPayload(JSON.toJSONString(studentDTO)).setHeader("KEYS", studentDTO.getId()).build();
- extRocketMQTemplate.sendOneWayOrderly("studentTopic".concat(":ESS"), message,studentDTO.getId());
- }
- @Test
- public void syncSendOrderly(){
- for (int i=0; i<20; i++){
- Message<String> message = MessageBuilder.withPayload("订单".concat("Orderder:"+i)).setHeader("KEYS", i).build();
- SendResult sendResult = extRocketMQTemplate.syncSendOrderly("order".concat(":OR"), message, String.valueOf(i));
- log.info(sendResult.toString());
- }
- }
- @Test
- public void syncSend(){
- StudentDTO studentDTO = new StudentDTO();
- studentDTO.setId("T002");
- studentDTO.setName("张三丰");
- studentDTO.setAge(11);
- Message<String> message = MessageBuilder.withPayload(JSON.toJSONString(studentDTO)).setHeader("KEYS", studentDTO.getId()).build();
- SendResult sendResult = extRocketMQTemplate.syncSend("studentTopic".concat(":ESS"), message);
- log.info(sendResult.toString());
- }
- @Test
- public void asyncSend(){
- StudentDTO studentDTO = new StudentDTO();
- studentDTO.setId("T003");
- studentDTO.setName("戴莉");
- studentDTO.setAge(11);
- Message<String> message = MessageBuilder.withPayload(JSON.toJSONString(studentDTO)).setHeader("KEYS", studentDTO.getId()).build();
- extRocketMQTemplate.asyncSend("studentTopic".concat(":ESS"), message, new SendCallback() {
- @Override
- public void onSuccess(SendResult sendResult) {
- log.info(sendResult.toString());
- }
- @Override
- public void onException(Throwable throwable) {
- log.info(throwable.getMessage());
- }
- });
- }
- }
|