praktikum-5/aufgabe-4
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,3 +1,4 @@
|
||||
.jdtls
|
||||
build
|
||||
result
|
||||
.direnv
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
<javac srcdir="${src.dir}" destdir="${classes.dir}"
|
||||
includeantruntime="false" debug="true">
|
||||
<compilerarg value="-Xlint:unchecked"/>
|
||||
<exclude name="**/.direnv/**"/>
|
||||
</javac>
|
||||
</target>
|
||||
|
||||
|
||||
53
praktikum-5/aufgabe4/Client.java
Normal file
53
praktikum-5/aufgabe4/Client.java
Normal file
@@ -0,0 +1,53 @@
|
||||
package praktikum5.aufgabe4;
|
||||
|
||||
import java.net.Socket;
|
||||
import java.net.UnknownHostException;
|
||||
import java.util.Scanner;
|
||||
import java.io.OutputStreamWriter;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStreamReader;
|
||||
|
||||
public class Client {
|
||||
private int port;
|
||||
|
||||
public Client(int port) {
|
||||
this.port = port;
|
||||
}
|
||||
|
||||
public String send(String msg) throws IOException {
|
||||
var socket = new Socket("localhost", port);
|
||||
var out = socket.getOutputStream();
|
||||
var in = socket.getInputStream();
|
||||
var reader = new InputStreamReader(in);
|
||||
var writer = new OutputStreamWriter(out);
|
||||
|
||||
writer.write(msg);
|
||||
writer.flush();
|
||||
socket.shutdownOutput();
|
||||
|
||||
var response = "";
|
||||
var curr = reader.read();
|
||||
while (curr != -1) {
|
||||
response += (char)curr;
|
||||
curr = reader.read();
|
||||
}
|
||||
reader.close();
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
try {
|
||||
int port = 4711;
|
||||
var client = new Client(port);
|
||||
var reader = new Scanner(System.in);
|
||||
while (true) {
|
||||
var msg = reader.nextLine();
|
||||
var response = client.send(msg);
|
||||
System.out.println("Response: " + response);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
System.out.println(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
51
praktikum-5/aufgabe4/Server.java
Normal file
51
praktikum-5/aufgabe4/Server.java
Normal file
@@ -0,0 +1,51 @@
|
||||
package praktikum5.aufgabe4;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStreamReader;
|
||||
import java.io.OutputStreamWriter;
|
||||
import java.net.ServerSocket;
|
||||
import java.net.Socket;
|
||||
|
||||
public class Server {
|
||||
private ServerSocket socket;
|
||||
|
||||
public Server(ServerSocket socket) {
|
||||
this.socket = socket;
|
||||
}
|
||||
|
||||
public String echo() throws IOException {
|
||||
var clientSocket = socket.accept();
|
||||
var in = clientSocket.getInputStream();
|
||||
var out = clientSocket.getOutputStream();
|
||||
var reader = new InputStreamReader(in);
|
||||
var writer = new OutputStreamWriter(out);
|
||||
|
||||
var msg = "";
|
||||
var curr = reader.read();
|
||||
while (curr != -1) {
|
||||
msg += (char)curr;
|
||||
curr = reader.read();
|
||||
}
|
||||
|
||||
writer.write(msg);
|
||||
writer.flush();
|
||||
writer.close();
|
||||
|
||||
return msg;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
try {
|
||||
int port = 4711;
|
||||
var socket = new ServerSocket(port);
|
||||
var server = new Server(socket);
|
||||
System.out.println("Listening on port " + port);
|
||||
while (true) {
|
||||
var msg = server.echo();
|
||||
System.out.println("Request: " + msg);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
System.out.println(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user