服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

封装了客户socket和客户的userid的代理类----agent

/*
 * created on 2004-12-15
 *  //该类解析了socket的用户名 userid,password,等待thread验证
 *  封装了客户socket和客户的userid
 * ???根据专家模式有两种方式:1 让thread处理
 *                       2 让agent自己处理.在thread处调用即可
 *                       这两种方法哪个更好一些??
 */
 import java.io.bufferedreader;
import java.io.ioexception;
import java.io.inputstreamreader;
import java.io.printwriter;
import java.net.*;
import java.util.stringtokenizer;
public class angent {
   private  socket socket;
   public string msg;//在这里解析,线程类,协议类可以利用
   private  string userid;
   private  string password;
   private bufferedreader in;
   private  printwriter out;
 
public string getpassword() {
 return password;
}
 
public socket getsocket() {
 return socket;
}
 
public string getuserid() {
 return userid;
}
public angent(socket asocket) {
 socket=asocket;
 try {
   in=new bufferedreader(new inputstreamreader(socket.getinputstream()));
   out= new printwriter(socket.getoutputstream(),true/*autoflush*/);
   msg=in.readline();
  getuser();//初始化字段
 } catch (ioexception e) {
  system.out.println("解析字符错误!");
  e.printstacktrace();
 }
 }
//解析命令,检测合法用户(用户首次登录)
private void getuser() throws ioexception{
 stringtokenizer t=new stringtokenizer(msg,"//");
    userid=t.nexttoken();
    password=t.nexttoken();
 }
 
public bufferedreader getin()  {
 return in;
}
 
public printwriter getout() {
 return out;
}
}

扫描关注微信公众号