簡體   English   中英

在Java中通過網絡發送列表

[英]Sending a list over a network in java

這是我的清單:

List<Form> to_be_sent=new ArrayList<Form>();

Form是一個實現可序列化的類,僅包含字符串字段。
我可以這樣做嗎?

ObjectOutputStream writer = new ObjectOutputStream(resp.getOutputStream());
writer.writeObject(to_be_sent);
writer.close();

有用!

這是一個最小的可行的實現,它序列化一個List,並通過套接字連接發送它,然后在另一端反序列化它,打印到達的東西。

public static void main(String[] args) throws Exception {
    List<String> list = Arrays.asList("one", "two", "three");
    Thread serverThread = new Thread(new Runnable() {
        public void run() {
            try {
                InputStream in = new ServerSocket(999).accept().getInputStream();
                Object object = new ObjectInputStream(in).readObject();
                System.out.println(object.getClass() + ": " + object);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    });
    serverThread.start();
    Socket socket = new Socket("localhost", 999);
    new ObjectOutputStream(socket.getOutputStream()).writeObject(list);
    serverThread.join();
}

輸出:

class java.util.Arrays$ArrayList: [one, two, three]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM