工作总结 年终总结 实习报告 毕业论文
四项监督制度心得体会 | 学习廉政准则心得体会 | 创先争优 | 警察纪律条令心得体会 | 三查三看
演讲致辞 竞聘演讲 | 会议发言 | 爱国演讲 | 就职演说 | 开业开幕 汇报体会 心得体会 | 企业文化 | 思想学习 | 征文演讲 | 经验材料 | 演讲稿 |调查报告
报告总结 工作总结 | 述职报告 | 调研报告 | 计划规划 | 工作汇报 公文处理 申报材料 | 企划文案 | 规则方案 | 技巧经验 | 模板范例 | 和谐社会| 晚会文艺
领导讲话 思想宣传 | 经济工作 | 工作报告 | 组织人事 | 反腐倡廉 党建工会 慰问贺电 | 事迹材料 | 思想汇报 | 入党相关 | 党会发言 | 个人简历| 实习报告 | 入党思想汇报
房地产范文 可研评估报告| 项目建议书| 设计文件| 招投标文件| 造价预算 计划书 商业计划书 | 策划书 | 合同文件| 企划方案 | 工程质量 | 党性分析| 入党申请书
|免费论文 | 证券金融 | 经 济 学 | 会计 / 审计 | 工商经济管理 | 财政税收 | 财务管理 | 公共管理 | 管 理 学 | 文 化 | 艺 术 学 | 社 会 学 | 教 育 学 | 工 科 | 理 科 | 计 算 机 | 文 学 | 哲 学 | 政 治 | 医 学 | 法学 / 法律 | 毕业论文格式 | 毕业论文范文 |
您现在的位置: 工作总结--范文网 >> 商业报告 >> IT通讯 >> 正文

运用JAVA实现服务器和多用户跨平台的通讯

关键字:运用JAVA实现服务器和多用户跨平台的通讯

 
作者:佚名    范文来源:本站原创    点击数:    更新时间:2010-5-25

运用JAVA实现服务器和多用户跨平台的通讯
  随着网络技术的发展,我们的局域网越做越大,里面的服务器客户机数量也很多。在为我们提供了诸多便利的同时,我们发现,由于服务器和客户机的操作平台不同,它们之间的通信是一个麻烦的问题,因为很多现成的通信软件或者源程序都是针对同一平台的。为了解决这个问题,我们采用JAVA编程,成功的实现了LINUX,WINDOWS NT,WIN98跨平台的通讯。

    服务器程序源代码如下:

//server.java import java.io.*;
import sun.net.*; class
server extends NetworkServer //定义服务器类
{
  DataInputStream net_input; //定义数据输出
  PrintStream net_output; //定义数据输入
    public static void main(String args[]) {
    new server();}
    public server() //运行服务器功能,并把端口设为1111
    {
      try
        {startServer(1111);}
      catch (Exception e) {
        System.out.println( "Unable to start server.");
        return; }
      System.out.println("Waiting for clients..."); }
     public void serviceRequest() //定义服务应答功能
    {
      net_input = new DataInputStream(clientInput);
      net_output = System.out;
      String user = read_net_input();
      System.out.println(user+" connected!");
      while(true) {
        String string;
        if((string=read_net_input( ))==null)
        break; //如果客户机输入NULL,中断服务
        write_net_output(user+":"+string);
         }
         System.out.println(user+" has disconnected!"); }
        String read_net_input() {
         try {
            return net_input.readLine();}
            catch(IOException e) {return null;} }
        void write_net_output(String string) {
          net_output.println(string);
          net_output.flush();
          }
         }
 
    客户机程序源代码:

//client.java import java.io.*;
import sun.net.*;
class client extends NetworkClient //定义客户机类
{
    DataInputStream net_input;
    PrintStream net_output;
    public static void main(String args[])//获得服务器IP地址和客户机名
    {
      if(args.length<2)
        {
          System.out.println( "To run,type:\n");
          System.out.println( "java client &quot;);
         }
      System.out.println( &quot;Connecting...&quot;);
       try {
          new client(args[0],args[1]);
          }
      catch (Exception e) {
            System.out.println( &quot;Unable to create NetworkClient.&quot;);
            return;
                        }
    }
    public client (String host,String username) throws IOException //与服务器链接功能
    {
      super(host,1111);
       if(serverIsOpen()) {
          System.out.println( &quot;Connected to server.&quot;);
          net_input = new DataInputStream(System.in);
          net_output = serverOutput;
          net_output.println(username);
          chat(); }
      else
          System.out.println(&quot;Error:Could not connect to server.&quot;); }

    void chat() //定义信息传

递函数,当输入EXIT时,中断链接
    {
      String string;
      System.out.println( &quot;Type EXIT to exit&quot;);
      while(true) {
        string=read_net_input();
         if(string.equalsIgnoreCase(&quot;EXIT&quot;))
        break;
        write_net_output(string);}
      System.out.println(&quot;Disconnecting...&quot;);
      close_server();
      System.out.println(&quot;Done!&quot;); }
      String read_net_input() {
        try {
            return net_input.readLine();
          }
        catch(IOException e) {return null;}
              } void

       
    write_net_output(String string) {
        net_output.println(string);
        net_output.flush(); }
    void close_server() {
        try {closeServer();}
        catch(Exception e) {System.out.println(&quot;Unable to close server.&quot;);}
      }
    }
----

    把两个源程序输入后,在任一操作平台上运行javac server.java和javac client.java,分别把它们编译成class文件。由于java的class文件的跨平台性,只要在服务器上运行相应的java解析程序执行server,在客户机上运行相应的java解析程序执行client ,就能实现客户机和服务器之间的通讯了,而且服务器允许多用户接入。以笔者学校的局域网为例,源程序在WIN98平台上用JDK 1.1.5编译成功,把server.class拷到一台LINUX服务器上,执行java server(该服务器已经安装了JAVA的RPM包),在其他WINNT平台上拷入client.class,运行jview client 192.168.100.1 NT(192.168.100.1是LINUX服务器的IP地址),就能实现跨平台通讯了。   

 


  

本站所有内容均来源于互联网和会员交流,仅供用户免费测试使用,著作权、版权归原著作权、版权人所有。如果您认为我们的某些文章侵犯了您的权利,请您来信通知我们,我们将尽快删除。
范文录入:wangtong    责任编辑:wangtong 
  • 上一篇范文:

  • 下一篇范文: 没有了
  • 七一 端午 圣诞 艾滋 老人 重阳 国庆 中秋 教师 八一 父亲 儿童
    母亲 护士 青年 劳动 清明 植树 妇女 元宵 春节 元旦 部长 站长
    秘书 队长 所长 馆长 团委 编辑 营销 干部 市委 业务 助理 工人
    省长 警察 护士 医生 律师 院长 行长 社长 店长 厂长 学生 班长
    校长 经理 董事 主管 主席 书记 股长 村长 组长 科长 乡长 镇长
    主任 处长 局长 区长 县长 厅长 市长 民警 整改 和谐 先进 安全
    文明 驻村 扶贫 招商 审计 统计 保先 创新 旅游 稽查 城管 城建
    消防 燃气 民营 县域 经济 科技 药品 医院 卫生 烟草 农业 林业
    残联 档案 保密 房产 国土 机关 药监 妇联 财务 综治 普法 廉政
    人事 组工 会计 财政 水利 行政 广电 电力 工厂 酒店 乡镇 学校
    社区 石油 煤矿 公司 宣传 工会 银行 税务 工商 邮政 电信 通信
    交通 公路 公安 司法 政协 人大 计生 检察 信访 教育 党委 党建
    安监
    新农村 读后感 收费站 大学生 开发区 幼儿园
    青少年 办公室 信用社 工程师 班主任 公务员 供销社
     
    热门推荐
    普通范文 2005 风投热潮给互联网创业带来危险
    普通范文 未来IT需求分析
    普通范文 美国网络巨头看好未来中国互联网市场
    普通范文 [电子技术]软件外包:软件业的新天地
    普通范文 3G发展态势
    普通范文 无线电子邮件的发展前景分析
    普通范文 未来3年中国行业信息化IT投入将稳步增长
    普通范文 2005年上半年光通信行业发展状况回顾
    普通范文 中国IPTV行业发展现状与趋势分析
    普通范文 分析:微软大幅重组 被紧缩为三头龙
    普通范文 当前电信发展的趋势与挑战
    普通范文 今年风险投资商最关注的三大产业
    普通范文 杰子:微软遭遇Google 笑到最后笑得最好
    普通范文 Intel禁止参加 AMD版IDF大会即将召开
    普通范文 固定和移动网络的融合趋势
    普通范文 不是冤家不聚首 微软与Google全力争夺AOL
    普通范文 无线宽带能否取代3G
    普通范文 网络电话逐渐图吞噬市场 长途每分钟0.2元
    普通范文 如何降低防盗报警系统的误、漏报率
    普通范文 我国3G市场最终用户需求调查分析报告
    普通范文 第二季度WLAN交换机增长45% 思科排第二位
    普通范文 05年手机市场预洗牌 将仅剩两三家国内企业
    普通范文 上半年IC产业同比增长30.2%
    普通范文 通信企业整合传言再起 电信四巨头否认合并传言
    普通范文 HSDPA对中国电信运营商的巨大影响
    普通范文 半导体产业呼唤新政策推动
    | 设为首页 | 加入收藏 | 联系我们 | 友情链接 | 版权申明 |
    京ICP备05019101号 北京市通信管理局
    Copyright ? 2000-2010 范文在线网 www.fanwen114.com -- 北京奇迹创业科技发展有限公司
    联系地址:北京市朝阳区南湖南路15号院(金隅丽港城)1号楼0905室 邮政编码:100102
    本站所有内容均来源于互联网和会员交流,仅供用户免费测试使用,著作权、版权归原著作权、版权人所有。
    如果您认为我们的某些文章侵犯了您的权利,请您来信通知我们,我们将尽快删除。
    caohaijun77#126.com(如发邮件请将"#"改为"@")