我是mqtt的新手。我正在启动一个ActiveMQ服务器并创建一个Java Spring Consumer来处理请求。我正在从终端成功发布文本消息并使用spring consumer进行处理。接下来,我需要通过mqtt发送一个图像文件。我有一些问题:
这是我用于消费mqtt短信的java代码:
public void onMessage(Message message) {
if (message instanceof BytesMessage) {
BytesMessage bm = (BytesMessage) message;
byte data[];
data = new byte[(int) bm.getBodyLength()];
bm.readBytes(data);
String msgText = new String(data);
}
}
这是我发送文件的代码:
mosquitto_pub -d -t test -f /home/abdulmanaf/Pictures/1.png
答案 0 :(得分:0)
发送文件的代码:
mosquitto_pub -d -t test -f /home/abdulmanaf/Pictures/1.png
用于接收文件的Spring Consumer代码:
if (message instanceof BytesMessage) {
try {
BytesMessage bm = (BytesMessage) message;
byte data[];
data = new byte[(int) bm.getBodyLength()];
bm.readBytes(data);
FileOutputStream fileOuputStream = new FileOutputStream(
"/tmp/hello.png");
fileOuputStream.write(data);
fileOuputStream.close();
} catch (Exception ex) {
ex.printStackTrace();
}
}