Smack初接触

第一次这么正经写学习博客,不知道从何下手。就先贴个代码,作为起始吧。错了,第一步是安装openfire。按着向导就可以了,数据库配置那里,根据自己的需求配置数据库连接字符串就可以了。刚开始时,只需要在用户/组——新建用户,进行测试就可以了

package main.java.conection;
import java.io.IOException;
import org.jivesoftware.smack.AbstractXMPPConnection;
import org.jivesoftware.smack.ConnectionConfiguration.SecurityMode;
import org.jivesoftware.smack.SmackException;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.chat.Chat;
import org.jivesoftware.smack.chat.ChatManager;
import org.jivesoftware.smack.tcp.XMPPTCPConnection;
import org.jivesoftware.smack.tcp.XMPPTCPConnectionConfiguration;

public class Test {

    public static void main(String[] args) {        
        XMPPTCPConnectionConfiguration.Builder builder=XMPPTCPConnectionConfiguration.builder();
        builder.setHost("127.0.0.1") //非必需;但似乎配置了host后,连接的速度会更快
                .setServiceName("administrator")//openfire服务器名称(一般是所在计算机的名称),不分大小写,必需配置
                .setPort(5222)//默认客户端到服务端的端口,非必需
                .setSecurityMode(SecurityMode.disabled);//由于没有相关证书,所以设置为disabled;必需
        XMPPTCPConnection connection=new XMPPTCPConnection(builder.build());//XMPPTCPConnection有多种构造方法
        try {
            connection.connect();
            /*
                账号或密码错误时报错:SASLError using SCRAM-SHA-1: not-authorized
                注意这里第一个参数是username;账号
            */
            connection.login("lily", "123456");
            //单例模式,每个connection创建出一个chatManager
            ChatManager chatManager=ChatManager.getInstanceFor(connection);
            Chat chat=chatManager.createChat("admin@127.0.0.1");//这里参数是Jid
            chat.sendMessage("hello admin2");
            System.out.println("send successfully");
        } catch (XMPPException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (SmackException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值