Page 313 - MDP2020-1
P. 313

················································································  명장양성프로젝트  【MDP】  과제발표회  자료집  Ⅰ    |  307


            라즈베리파이4(버전)
            <라즈베리파이>
            (TCP/IP  통신  및  제어)
            import  java.io.BufferedReader;

            import  java.io.BufferedWriter;
            import  java.io.InputStreamReader;
            import  java.io.ObjectOutputStream;
            import  java.io.OutputStreamWriter;

            import  java.io.PrintWriter;
            import  java.net.ServerSocket;
            import  java.net.Socket;

            public  class  SocketServer  implements  Runnable  {
                    public  static  final  int  ServerPort  =  9999;

                    @Override
                    public  void  run()  {
                            try  {


                                    ServerSocket  serverSocket  =  new  ServerSocket(ServerPort);//소켓생성
                                    System.out.println("Connecting...");
                                    while  (true)  {
                                            //client  접속  대기
                                            Socket  client  =  serverSocket.accept();  //데이터  전송  감지
                                            System.out.println("Receiving...");

                                            try  {

                                                    //client  data  수신

                                                    //소켓에서  넘오는  stream  형태의  문자를  얻은  후  읽어  들어서

            bufferstream                  형태로                     in                 에                  저장.

                                                    BufferedReader   in   =   new       BufferedReader(new
            InputStreamReader(client.getInputStream()));
                                                    //in에  저장된  데이터를  String  형태로  변환  후  읽어들어서  String에  저장

                                                    String  str  =  in.readLine();
                                                    System.out.println("Received:  '"  +  str  +  "'");
                                                    //client에  다시  전송
                                                    PrintWriter   out   =   new   PrintWriter(new   BufferedWriter(new
            OutputStreamWriter(client.getOutputStream())),  true);

                                                    out.println("Server  Received  :  '"  +  str  +  "'");
   308   309   310   311   312   313   314   315   316   317   318