Heim  >  Artikel  >  Java  >  Wie interagiert die Java-Netzwerkprogrammierung mit anderen Sprachen wie Python?

Wie interagiert die Java-Netzwerkprogrammierung mit anderen Sprachen wie Python?

PHPz
PHPzOriginal
2024-04-15 17:45:01408Durchsuche

Java-Netzwerkprogrammierung kann mit Anwendungen interagieren, die in anderen Sprachen wie Python geschrieben sind. Dieser Artikel zeigt die Schritte für die Interaktion zwischen Java und Python: Java erstellt einen Server und lauscht an einem bestimmten Port. Python erstellt einen Client, der eine Verbindung zur IP-Adresse und zum Port des Java-Servers herstellt. Python sendet Daten an Java, und Java verarbeitet sie und sendet eine Antwort an Python.

Wie interagiert die Java-Netzwerkprogrammierung mit anderen Sprachen wie Python?

Java-Netzwerkprogrammierung interagiert mit anderen Sprachen

Java-Netzwerkprogrammierung kann nicht nur mit anderen Java-Anwendungen kommunizieren, sondern auch mit Anwendungen interagieren, die in anderen Sprachen wie Python geschrieben sind. In diesem Artikel wird gezeigt, wie die Java-Netzwerkprogrammierung zur Interaktion mit Python verwendet wird, und ein praktischer Fall bereitgestellt.

1. Einen Java-Server erstellen

import java.net.ServerSocket;
import java.net.Socket;
import java.io.InputStream;
import java.io.OutputStream;

public class JavaServer {

    public static void main(String[] args) throws Exception {
        // 创建服务端套接字,监听端口 5000
        ServerSocket serverSocket = new ServerSocket(5000);

        // 接受客户端连接,并创建套接字
        Socket socket = serverSocket.accept();

        // 获取输入流和输出流
        InputStream inputStream = socket.getInputStream();
        OutputStream outputStream = socket.getOutputStream();

        // 读取客户端发送的数据
        byte[] buffer = new byte[1024];
        int length = inputStream.read(buffer);
        String message = new String(buffer, 0, length);

        // 处理来自客户端的数据
        // ...

        // 向客户端发送数据
        String response = "已收到来自 Python 客户端的数据";
        outputStream.write(response.getBytes());

        // 关闭套接字和服务端套接字
        socket.close();
        serverSocket.close();
    }
}

2. Einen Python-Client erstellen

import socket

# 创建客户端套接字,连接到 Java 服务端的 IP 地址和端口
clientSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
clientSocket.connect(('127.0.0.1', 5000))

# 发送数据到 Java 服务端
message = "这是来自 Python 客户端的数据"
clientSocket.send(message.encode())

# 接收来自 Java 服务端的数据
response = clientSocket.recv(1024)
print(response.decode())

# 关闭客户端套接字
clientSocket.close()

Praktischer Fall: Dateiübertragung

Der folgende Code zeigt einen praktischen Fall der Dateiübertragung mit Java und Python:

Java-Server:

// ... 同 JavaServer 代码 ...

// 接收文件内容
byte[] fileContent = new byte[1024];
int totalLength = 0;
while ((length = inputStream.read(fileContent)) != -1) {
    totalLength += length;
}

// ... 同 JavaServer 代码 ...

Python-Client:

# ... 同 PythonClient 代码 ...
with open('test.txt', 'rb') as f:
    fileContent = f.read()
clientSocket.send(fileContent)

# ... 同 PythonClient 代码 ...

Das obige ist der detaillierte Inhalt vonWie interagiert die Java-Netzwerkprogrammierung mit anderen Sprachen wie Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn