查看: 822|回复: 3

[原创] RioTboard板子·····linux系统上Java网络编程实验

[复制链接]

33

主题

10

好友

2412

积分

进士

Rank: 5Rank: 5

  • TA的每日心情
    无聊
    2016-11-9 20:46
  • 签到天数: 229 天

    [LV.7]常住居民III

    发表于 2014-6-6 00:04:31 |显示全部楼层
    本帖最后由 木子鱼 于 2014-6-6 18:08 编辑

         初步想法是想将Rio的Ubuntu系统搭建成一个服务器 server端,在上面运行服务器端的java程序。
         电脑windows 作为 client 端1,运行客户端1的java程序;
         电脑ubuntu    作为 client 端2,运行客户端2的java程序;
         两个客户端同时与服务器端通信。
    ·················································································································································
         步骤:1、JDK的安装
    首先是在Rio的系统中安装JDK 。这次,我抛弃之前帖子中的安装jdk的方法,改用简单的命令: apt-get install openjdk-7-jdk
    安装完成后输入 javac -version 验证安装成功。
    RIO_1.png

    然后在电脑windows 中安装JDk ,这个步骤省略,网上有很多教程。我电脑已经安装了
    java_windows1.png


    电脑ubuntu  中安装jdk ,这个已经在前面的帖子“Android编译环境搭建”中安装过了。在此省略。

    2、服务器端 java程序的编写     MyServer.java
    import java.io.*;
    import java.net.*;
    public class MyServer {
            public static void main(String[] args) {
              try{
                       //创建ServerSocket
                      ServerSocket ss=new ServerSocket(8888);
                      System.out.println("I am listening");
                      //监听,知道某个客户端链接,一旦链接成功,就会得到 一个Socket( 一个数据管道)
                      Socket s=ss.accept();
                      //可以读取从客户端发送的信息
                      InputStreamReader isr= new InputStreamReader(s.getInputStream());
                      BufferedReader br=new BufferedReader(isr);
                      String kk=br.readLine();
                      System.out.println("client sent:"+kk);
                     //从服务器端回一个消息
                      OutputStreamWriter osw=new OutputStreamWriter(s.getOutputStream());
                      PrintWriter pw=new PrintWriter(osw,true);
                      pw.println("I get your message:"+kk);          
              } catch (Exception e) {
                      e.printStackTrace();
              }
            }
    }

    客户端java程序的编写   MyClient.java
    import java.io.*;
    import java.net.*;
    public class MyClient {
           public static void main(String[] args) {
           try{       
                    //链接服务器的IP和PORT
                    Socket s=new Socket("192.168.1.122",8888);
                    //通过文件流发送消息  
                    OutputStreamWriter osw=new OutputStreamWriter(s.getOutputStream());
                      BufferedWriter bw=new BufferedWriter(osw);
                     PrintWriter pw=new  PrintWriter(bw,true);
                     //发送
                     pw.println("hello,world!");
                   //读取从服务器回送的信息
                     InputStreamReader isr=new InputStreamReader(s.getInputStream());
                     BufferedReader br=new BufferedReader(isr);
                     String response=br.readLine();
                     System.out.println("server response is:::"+response);   
           } catch (Exception e) {
                   e.printStackTrace();
                 }
            }
    }

    3、在服务器端 编译MyServer.java ,并运行  (注意一定要先运行服务器端程序)
    终端输入javac   MyServer.java 进行编译,生成  MyServer.class, 运行时输入  java MyClient  ,会看到效果:I am listening
    RIO_Server.png


    4、在电脑客户端   编译MyClient.java,并运行
    如下图,在windows系统的DOS中进入存放MyClient.java的D:\   输入javac MyClient.java 进行编译,生成MyClient.class
    运行时输入  java MyClient
       java_windows2.png

    运行后,会看到服务器端发送来的反馈信息。
    windows_2.png

    而此运行的同时,在服务器端  也看到了 client sent:hello,world!
    rio_1.png


    在电脑ubuntu  中,也是一样的操作:
    Screenshot from 2014-06-06 11_38_01.png



    回复

    使用道具 举报

    67

    主题

    14

    好友

    5038

    积分

    状元

    Rank: 6Rank: 6

  • TA的每日心情
    奋斗
    2015-10-8 09:49
  • 签到天数: 430 天

    [LV.9]以坛为家II

    爱板会员勋章

    发表于 2014-6-6 06:04:48 |显示全部楼层
    活学活用,顶一个。楼主博学,java也搞起来了!
    回复

    使用道具 举报

    1083

    主题

    2

    好友

    1万

    积分

    翰林

    Rank: 7Rank: 7Rank: 7

  • TA的每日心情
    开心
    2014-9-23 05:09
  • 签到天数: 113 天

    [LV.6]常住居民II

    发表于 2014-6-6 06:18:58 |显示全部楼层
    谢谢楼主分享!
    回复

    使用道具 举报

    33

    主题

    10

    好友

    2412

    积分

    进士

    Rank: 5Rank: 5

  • TA的每日心情
    无聊
    2016-11-9 20:46
  • 签到天数: 229 天

    [LV.7]常住居民III

    发表于 2014-6-6 10:06:02 |显示全部楼层
    bruce_helen 发表于 2014-6-6 06:04
    活学活用,顶一个。楼主博学,java也搞起来了!

    Java是在我学linux之前已经搞起了的,现在有了linux这样的平台,更佳!
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    关闭

    站长推荐上一条 /5 下一条


    手机版|爱板网 |网站地图  

    GMT+8, 2016-12-10 22:43 , Processed in 0.091975 second(s), 13 queries , Memcache On.

    苏公网安备 32059002001056号

    Powered by Discuz!

    回顶部