📄 talkservice.java~1~
字号:
package servertalk;
import java.net.Socket;
import java.util.List;
import java.util.ArrayList;
import java.util.StringTokenizer;
public class TalkService
{
public final static int MSG_LOGIN = 1;
public final static int MSG_TEXT = 2;
static List lstInfo = new ArrayList();
public TalkService()
{
}
public static void procMsg(String msg, Socket cs) throws Exception
{
List l = decode(msg);
int msgId = Integer.parseInt(l.get(0).toString());
//System.out.println(msgId);
switch(msgId)
{
case MSG_LOGIN:
procMsgLogin(l,cs);
break;
case MSG_TEXT:
procMsgText(l,cs);
break;
}
}
private static void procMsgLogin(List l, Socket cs)
{
String qq = l.get(2).toString();
// System.out.println(qq);
// String passwd = l.get(3).toString();
// System.out.println(passwd);
TalkClientInfo ci = new TalkClientInfo(qq, cs);
lstInfo.add(ci);
}
private static void procMsgText(List l, Socket cs) throws Exception
{ /* 2+LocalQQ+FriendQQ+信息 */
String qq = l.get(1).toString();
//System.out.println(qq);
String friendQq = l.get(2).toString();
//System.out.println(friendQq);
String msg = l.get(3).toString();
// System.out.println(msg);
TalkClientInfo ci;
for(int i=0; i<lstInfo.size(); i++)
{
ci = (TalkClientInfo)lstInfo.get(i);
if(friendQq.equals(ci.getQq()))
{
msg = qq+":"+msg;
TcpSocket.send(ci.getCs(), msg);
break;
}
}
}
private static List decode(String msg)
{/* msg=1+1+LocalQQ+LocalPassWord*/
List l = new ArrayList();
StringTokenizer st = new StringTokenizer(msg, "+");
while(st.hasMoreTokens())
{
l.add(st.nextToken());
}
return l;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -