Java 使用servlet的smack连接

Java 使用servlet的smack连接,java,facebook,servlets,chat,smack,Java,Facebook,Servlets,Chat,Smack,在这里,我使用smack和servlet连接到facebook,我可以发送和接收聊天信息。 但这里的连接对象是实例变量(不是线程安全的),所以所有用户都得到相同的连接对象 如果我们在doGet()方法中声明XMPPConnection对象,那么每次都必须进行连接 当用户发送聊天信息时 为我的问题提供一些解决方案 public class Home_page_action extends HttpServlet implements MessageListener{ public XMPPC

在这里,我使用smack和servlet连接到facebook,我可以发送和接收聊天信息。 但这里的连接对象是实例变量(不是线程安全的),所以所有用户都得到相同的连接对象

如果我们在doGet()方法中声明XMPPConnection对象,那么每次都必须进行连接 当用户发送聊天信息时

为我的问题提供一些解决方案

public class Home_page_action extends HttpServlet  implements MessageListener{

 public XMPPConnection connection;

    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

               if(connection!=null)
               {connection.connect("uname","password");}
               else{
               //send message code to target user
                }


              }

}

创建一些类来维护连接池,每次只需调用该类的getInstance

你是说就像连接池一样?你的要求是什么?您想为每个用户或每个请求创建新连接吗?为每个用户创建新连接比您可以在缓存内存中创建类似映射的映射更简单..谢谢您的耐心。最后,我的假设是-当用户登录时,我必须在映射中保留用户名和XMPPConnectionobject,并在会话中保留用户名。当用户需要时XMPPConnectionobject,他可以在地图上浏览他的连接,并使用连接做一些事情。