WEB开发网
开发学院软件开发Java 深入理解Apache Mina (3)---- 与IoHandler相... 阅读

深入理解Apache Mina (3)---- 与IoHandler相关的几个类

 2009-09-16 00:00:00 来源:WEB开发网   
核心提示: 根据上面的需求,我们使用Mina来实现上面的服务器和客户端,深入理解Apache Mina (3)---- 与IoHandler相关的几个类(3),程序的代码如下(完整代码在附件中):Java代码KFCFoodPriceHandler(服务器句柄):publicclassKFCFoodPrice

根据上面的需求,我们使用Mina来实现上面的服务器和客户端,程序的代码如下(完整代码在附件中):

Java代码  

KFCFoodPriceHandler(服务器句柄): 
public class KFCFoodPriceHandler extends IoHandlerAdapter { 
 // 创建会话 
 public void sessionOpened(IoSession session) throws 
 
Exception { 
// System.out.println(" 服务器创建了会话 "); 
 } 
 
 // 接收信息 
 public void messageReceived(IoSession session, Object 
 
message) 
  throws Exception { 
 HashMap<String, Object> map = (HashMap<String, 
 
Object>) message; 
 String buythings = (String) map.get("购买"); 
// System.out.println(" 服务器接收到的信息 " + 
 
buythings); 
 if (buythings.equals("汉堡")) { 
  HashMap<String, Object> map2 = new 
 
HashMap<String, Object>(); 
  map2.put("食品", "汉堡"); 
  map2.put("价格", 4); 
  session.write(map2); 
 } else if (buythings.equals("鸡翅")) { 
  HashMap<String, Object> map2 = new 
 
HashMap<String, Object>(); 
  map2.put("食品", "鸡翅"); 
  map2.put("价格", 5); 
  session.write(map2); 
 } else { 
  session.write(" 该种物品已经出售完毕,谢谢 
 
惠顾!"); 
 } 
 } 
} 
 
KFCSellerHandler(客户端句柄): 
public class KFCSellerHandler extends IoHandlerAdapter { 
 
 private Integer childInputMoney_Ham = 4; 
 private Integer childInputMoney_Chick = 5; 
 // 创建会话 
 public void sessionOpened(IoSession session) throws 
 
Exception { 
 
 HashMap<String, Object> map = new 
 
HashMap<String, Object>(); 
 map.put("购买", "汉堡"); 
 session.write(map); 
 } 
 
 // 接收信息 
 public void messageReceived(IoSession session, Object 
 
message) 
  throws Exception { 
// System.out.println(" 客户端接收到的服务器的信息是 " 
//  + (HashMap<String, Object>) 
 
message); 
 HashMap<String, Object> priceInfor = 
 
(HashMap<String, Object>) message; 
// System.out.println("============" + 
 
priceInfor.get("食品")); 
 String foodName = (String) priceInfor.get("食品"); 
 if (foodName.equals("汉堡")) { 
  Integer foodPrice = (Integer) priceInfor.get 
 
("价格"); 
  if (foodPrice.equals 
 
(childInputMoney_Ham)) { 
  System.out.println("  您好,请收好 
 
你的汉堡,欢迎下次光临!"); 
  } else { 
  System.out.println("  对不起,你投 
 
如的钱币数量不够,钱已经如数归还,请收好!"); 
  } 
 } else if (foodName.equals("鸡翅")) { 
  Integer foodPrice = (Integer) priceInfor.get 
 
("价格"); 
  if (foodPrice.equals 
 
(childInputMoney_Chick)) { 
  System.out.println("  您好,请收好 
 
你的汉堡,欢迎下次光临!"); 
  } else { 
  System.out.println("  对不起,你投 
 
如的钱币数量不够,钱已经如数归还,请收好!"); 
  } 
 } 
 } 
} 

上一页  1 2 3 4  下一页

Tags:深入 理解 Apache

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接