我必须通过网络通过 tcp 套接字(服务器 > 客户端)传递一个 ArrayList。当我传递和 Arraylist of Strings 时,它工作正常,客户端能够接受 ArrayList 并打印。但是当 ArrayList 关闭对象时,我有很多异常并且它不起作用。请看下面。
服务器
ArrayList<Database> List = new ArrayList<>(); //Database is a seperate class
Database item1 = new Database();
item1.code = "1568";
item1.name = "Round Table";
item1.details = "Ikeas best Seller";
item1.inStock = "17";
List.add(item1);
...
ObjectOutputStream oout = new ObjectOutputStream(socket.getOutputStream());
oout.writeObject(List);
客户
ObjectInputStream iin = new ObjectInputStream(socket.getInputStream());
Object items = iin.readObject();
使用此代码,我抛出了许多异常。如果我用字符串类型的数组替换数组,就像ArrayList<String> Items = new ArrayList<>();
它会正常工作。有任何想法吗?我在这里真的很累。谢谢你!