Advertisement
TermSpar

Java Networking

Aug 31st, 2016
304
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.22 KB | None | 0 0
  1. import java.io.IOException;
  2. import java.net.ServerSocket;
  3. import java.net.Socket;
  4.  
  5. import javax.swing.JFrame;
  6. import javax.swing.JTextArea;
  7.  
  8.  
  9. public class Server {
  10.  
  11.     //GUI Objects:
  12.     private JFrame frame = new JFrame("Server");
  13.     private JTextArea txtArea = new JTextArea();
  14.    
  15.     //Server Objects:
  16.     private ServerSocket serverSocket;
  17.     private Socket socket;
  18.    
  19.     public Server() throws IOException {
  20.         //Frame Attributes:
  21.         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  22.         frame.setVisible(true);
  23.         frame.setResizable(false);
  24.         frame.setSize(400, 600);
  25.         frame.setLayout(null);
  26.        
  27.         //txtArea Attributes:
  28.         txtArea.setSize(360, 500);
  29.         txtArea.setLocation(15, 10);
  30.        
  31.         //Add Objects To Frame:
  32.         frame.add(txtArea);
  33.        
  34.         //Open Server On Port 7777:
  35.         serverSocket = new ServerSocket(7777);
  36.        
  37.         //Wait For Clients:
  38.         while(true){
  39.             socket = serverSocket.accept();
  40.             ServerThread sThread = new ServerThread(socket, txtArea);
  41.             sThread.start();
  42.         }
  43.     }
  44.  
  45.     public static void main(String[] args) throws IOException {
  46.          new Server();
  47.     }
  48.  
  49. }
  50.  
  51. import java.io.BufferedReader;
  52. import java.io.IOException;
  53. import java.io.InputStreamReader;
  54. import java.net.Socket;
  55.  
  56. import javax.swing.JTextArea;
  57.  
  58.  
  59. public class ServerThread extends Thread {
  60.  
  61.     private Socket socket;
  62.     private JTextArea txt;
  63.     private String message = null;
  64.     private BufferedReader br;
  65.    
  66.     public ServerThread(Socket newSock, JTextArea newTxt) {
  67.         this.socket = newSock;
  68.         this.txt = newTxt;
  69.     }
  70.  
  71.     public void run(){
  72.         try {
  73.             br = new BufferedReader(new InputStreamReader(socket.getInputStream()));
  74.             message = br.readLine();
  75.             txt.append("Client: " + message + "\n");
  76.             socket.close();
  77.         } catch (IOException e) {
  78.             e.printStackTrace();
  79.         }
  80.     }
  81.    
  82. }
  83.  
  84. import java.awt.event.ActionEvent;
  85. import java.awt.event.ActionListener;
  86. import java.io.IOException;
  87. import java.io.PrintWriter;
  88. import java.net.Socket;
  89. import java.net.UnknownHostException;
  90.  
  91. import javax.swing.JFrame;
  92. import javax.swing.JTextField;
  93.  
  94.  
  95. public class Client {
  96.  
  97.     //GUI Objects:
  98.     private JFrame frame = new JFrame("Client");
  99.     private JTextField txtMessage = new JTextField();
  100.    
  101.     //Client Objects:
  102.     private Socket socket;
  103.     private String message;
  104.     private PrintWriter printWriter;
  105.    
  106.     public Client() {
  107.         //Frame Attributes:
  108.         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  109.         frame.setVisible(true);
  110.         frame.setResizable(false);
  111.         frame.setSize(400, 600);
  112.         frame.setLayout(null);
  113.        
  114.         //txtMessage Attributes:
  115.         txtMessage.setSize(360, 25);
  116.         txtMessage.setLocation(10, 15);
  117.        
  118.         //txtMessage Event:
  119.         txtMessage.addActionListener(new ActionListener(){
  120.             public void actionPerformed(ActionEvent arg0) {
  121.                 try {
  122.                     //Open Client On Port 7777:
  123.                     socket = new Socket("localhost", 7777);
  124.                     printWriter = new PrintWriter(socket.getOutputStream(), true);
  125.                     message = txtMessage.getText();
  126.                     printWriter.println(message);
  127.                     txtMessage.setText("");
  128.                 } catch (UnknownHostException e) {
  129.                     e.printStackTrace();
  130.                 } catch (IOException e) {
  131.  
  132.                     e.printStackTrace();
  133.                 }
  134.             }
  135.         });
  136.        
  137.         //Add Objects To Frame:
  138.         frame.add(txtMessage);
  139.     }
  140.  
  141.     public static void main(String[] args) {
  142.         new Client();
  143.     }
  144.  
  145. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement