Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JAVA消息侦听器_Java_Jms - Fatal编程技术网

JAVA消息侦听器

JAVA消息侦听器,java,jms,Java,Jms,我已经创建了与订阅者和发布者的java聊天。我正在尝试向特定用户发送私人消息。当我发送消息时,所有用户都收到了消息。我在使用“如果”时尝试从用户处取消以获取消息,但它不起任何作用 else if (tempM[2].equals(chat)) { //send message to every one if (userNameListErea.isSelectionEmpty()) { chatTextErea.append(tempM[0] + ": " + tempM[1]

我已经创建了与订阅者和发布者的java聊天。我正在尝试向特定用户发送私人消息。当我发送消息时,所有用户都收到了消息。我在使用“如果”时尝试从用户处取消以获取消息,但它不起任何作用

else if (tempM[2].equals(chat)) {
  //send message to every one
  if (userNameListErea.isSelectionEmpty()) {
    chatTextErea.append(tempM[0] + ": " + tempM[1] + "\n");
  // not send message to your self.
  } else if (userNameListErea.getSelectedValue().toString().equals(userName)) {
    chatTextErea.append("Can not sent private to your self \n");
  // if its not public and not to ypurself the its private 
  }else {
    chatTextErea.append(userNameListErea.getSelectedValue() + " send u private: " +
      tempM[1] + "\n");
  }
}

也许我错过了阻止用户查看消息的正确命令

当您试图使用确切的smae机制向每个人和一个单独的用户发送消息时,您将不会得到您想要的结果

您需要添加逻辑以查看当前用户是否与发送消息的用户相同。根据您发布的示例,
userName
是发送方的名称,因此您需要为接收方提供类似的逻辑:

}else if (userNameListErea.getSelectedValue().toString().equals(currentUserName)) {   
  chatTextErea.append(userNameListErea.getSelectedValue() + " send u private: " +   
  tempM[1] + "\n");   
}