source code for bealdung article "Find IP address of client" (#10995)
* Application source code for the Baeldung article "HTTP PUT vs POST method in REST API" * update indention in pom file, update code in Address class * update indention * rename application * update pom * source code for article "Connection timeout vs read timeout" * Source code for Baeldung article BAEL-4896 * update code * source code for Baeldung article bael-4896 * add main method to client and server * remove comment * include command-line argument option for client, remove try-catch block * update greetings message section
This commit is contained in:
		
							parent
							
								
									6009a3bb87
								
							
						
					
					
						commit
						ec6f5d90cc
					
				| @ -0,0 +1,39 @@ | |||||||
|  | package com.baeldung.clientaddress; | ||||||
|  | 
 | ||||||
|  | import java.io.BufferedReader; | ||||||
|  | import java.io.IOException; | ||||||
|  | import java.io.InputStreamReader; | ||||||
|  | import java.io.PrintWriter; | ||||||
|  | import java.net.Socket; | ||||||
|  | 
 | ||||||
|  | public class ApplicationClient { | ||||||
|  | 
 | ||||||
|  |     private Socket clientSocket; | ||||||
|  |     private PrintWriter out; | ||||||
|  |     private BufferedReader in; | ||||||
|  | 
 | ||||||
|  |     public void connect(String ip, int port) throws IOException { | ||||||
|  |         clientSocket = new Socket(ip, port); | ||||||
|  |         out = new PrintWriter(clientSocket.getOutputStream(), true); | ||||||
|  |         in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream())); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     public void sendGreetings(String msg) throws IOException { | ||||||
|  |         out.println(msg); | ||||||
|  |         String reply = in.readLine(); | ||||||
|  |         System.out.println("Reply received from the server :: " + reply); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     public void disconnect() throws IOException { | ||||||
|  |         in.close(); | ||||||
|  |         out.close(); | ||||||
|  |         clientSocket.close(); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     public static void main(String[] args) throws IOException { | ||||||
|  |         ApplicationClient client = new ApplicationClient(); | ||||||
|  |         client.connect(args[0], Integer.parseInt(args[1])); // IP address and port number of the server | ||||||
|  |         client.sendGreetings(args[2]); // greetings message | ||||||
|  |         client.disconnect(); | ||||||
|  |     } | ||||||
|  | } | ||||||
| @ -0,0 +1,51 @@ | |||||||
|  | package com.baeldung.clientaddress; | ||||||
|  | 
 | ||||||
|  | import java.io.BufferedReader; | ||||||
|  | import java.io.IOException; | ||||||
|  | import java.io.InputStreamReader; | ||||||
|  | import java.io.PrintWriter; | ||||||
|  | import java.net.InetSocketAddress; | ||||||
|  | import java.net.ServerSocket; | ||||||
|  | import java.net.Socket; | ||||||
|  | 
 | ||||||
|  | public class ApplicationServer { | ||||||
|  | 
 | ||||||
|  |     private ServerSocket serverSocket; | ||||||
|  |     private Socket connectedSocket; | ||||||
|  |     private PrintWriter out; | ||||||
|  |     private BufferedReader in; | ||||||
|  | 
 | ||||||
|  |     public void startServer(int port) throws IOException { | ||||||
|  |         serverSocket = new ServerSocket(port); | ||||||
|  |         connectedSocket = serverSocket.accept(); | ||||||
|  | 
 | ||||||
|  |         InetSocketAddress socketAddress = (InetSocketAddress) connectedSocket.getRemoteSocketAddress(); | ||||||
|  |         String clientIpAddress = socketAddress.getAddress() | ||||||
|  |             .getHostAddress(); | ||||||
|  |         System.out.println("IP address of the connected client :: " + clientIpAddress); | ||||||
|  | 
 | ||||||
|  |         out = new PrintWriter(connectedSocket.getOutputStream(), true); | ||||||
|  |         in = new BufferedReader(new InputStreamReader(connectedSocket.getInputStream())); | ||||||
|  |         String msg = in.readLine(); | ||||||
|  |         System.out.println("Message received from the client :: " + msg); | ||||||
|  |         out.println("Hello Client !!"); | ||||||
|  | 
 | ||||||
|  |         closeIO(); | ||||||
|  |         stopServer(); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     private void closeIO() throws IOException { | ||||||
|  |         in.close(); | ||||||
|  |         out.close(); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     private void stopServer() throws IOException { | ||||||
|  |         connectedSocket.close(); | ||||||
|  |         serverSocket.close(); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     public static void main(String[] args) throws IOException { | ||||||
|  |         ApplicationServer server = new ApplicationServer(); | ||||||
|  |         server.startServer(5000); | ||||||
|  |     } | ||||||
|  | } | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user