- Java code
//类一:try { ObjectInputStream ois = new ObjectInputStream(socket.getInputStream()); reception = ois.readObject(); ois.close(); socket.close(); //关闭Socket} catch (Exception e) { e.printStackTrace();}//类二:public Object reqInfo (Object req , Socket socket){ ArrayList al = (ArrayList) req; al.add(socket); Object obj = (Object) al; return obj;}//类三:public void jud_do(Object temp){al = (ArrayList)temp;sokect = al.get(X).toString();//X代表类二中socket存的位置receiveRequest(socket)} //类四:public void receiveRequest(Socket socket) { this.socket = socket; try { ObjectOutputStream oos= new ObjectOutputStream(socket.getOutputStream()); oos.writeObject(reception); oos.flush(); oos.close(); socket.close(); //关闭Socket } catch (Exception e) { e.printStackTrace(); }}
不知道这样做有没有问题?!请达人们帮忙解决一下,小弟对网络方面很菜的,请指教!!!
------解决方案--------------------
------解决方案--------------------
mark
------解决方案--------------------
做为一个toy program已经没有什么太大的问题了。
你如果还要想做深点,不妨用下连接池。
------解决方案--------------------
看着头晕...
1.socket未指定Host和Port
2.看不清楚服务端和客户端,看不清楚程序要干嘛,一般来说socket 的server端只启用一个进程在运行即可,其内部是有队列的
3.类三里,sokect = al.get(X).toString();//X代表类二中socket存的位置
这句已经变成String了,又把其做为参数传到方法receiveRequest(socket);里,而该方法的参数类型却是Socket socket
------解决方案--------------------
mark