小弟刚刚 做这个,现在公司急着我实现两台机器的数据交换:即 自己这边发送数据到另一边,另一边边接受处理后,返回给我一个信息,然后我在根据返回信息做处理。多谢各位了!

解决方案 »

  1.   

    先把对象Serializable化后,已流的形式传到对方机器,对方收到后反Serializable就可以了
      

  2.   

    TO 楼主:
    1、对于要传送的类,需要实现java.io.Serializable接口,仅仅声明实现就行了,不用实现任何方法。
    2、发送和接受的双方,必须都包含此类的相同版本,否则接收方无法反序列化。
    3、如果要传送的类里引用了其他对象,这些对象也必须实现了java.io.Serializable接口,而且发送和接受双方也都有这些类的相同版本。这条需要递归检查。
    3、1楼2楼3楼说的没错,用socket就可以实现通讯。
      

  3.   

    1楼2楼3楼4楼说的没错,用socket就可以实现通讯。
      

  4.   

    TCP  和UDP  协议相关的类
    Java中与网络相关的类存放在java.net包中
    IP地址类
    InetAddress
    UDP协议对应的类
    DatagramSocket
    DatagramPocket
    TCP类协议对应的类
    ServerSocket(服务端)
    SocketSocket(客户端)
    InetAddress类
    用于表示计算机的地址
    常用方法
    getHostAddressget
    返回字符串格式的IP地址
    getByNamegetByName
    静态方法,用字符串构造一个静态方法,用字符串构造一个InetAddressInetAddress对象
    DatagramSocketDatagramSocket类的构造方法
    public DatagramSocketDatagramSocket()()
    public DatagramSocket(intDatagramSocket(intport)port)
    public DatagramSocket(intDatagramSocket(intport , port , InetAddressInetAddressladdrladdr) )
    DatagramSocket类的方法
    public void send(DatagramPacketsend(DatagramPacketp)p)
    public void receive(DatagramPacketreceive(DatagramPacketp)p)
    public void close()
    DatagramPacketDatagramPacket类的构造方法
    public DatagramPacket(byteDatagramPacket(byte[] [] buf,intbuf,intlength)length)
    接收数据包
    public DatagramPacket(byteDatagramPacket(byte[] [] buf,intbuf,intlength,InetAddresslength,InetAddressaddress,intaddress,intport)port)
    发送数据包,指定目标发送数据包,指定目标IPIP地址和端口号地址和端口号
    常用方法
    getInetAddressget
    getPortgetPort
    getLength
    举两个例子
    import java.net.*;public class UdpReceive//用于接收消息
    {
    public static void main(String[] args) throws Exception
    {
    DatagramSocket ds = new DatagramSocket(5000);
    byte[] buf = new byte[1024];
    DatagramPacket dp = new DatagramPacket(buf,buf.length);
    ds.receive(dp);
    String message = new String(dp.getData(),0,dp.getLength()) + " from " + dp.getAddress() + ":" + dp.getPort();
    System.out.println(message);
    ds.close();
    }
    }
    import java.net.*;public class UdpSend//用于发送消息
    {
    public static void main(String[] args) throws Exception
    {
    DatagramSocket ds = new DatagramSocket();
    String message = "Welcome to Java.";
    DatagramPacket dp = new DatagramPacket(message.getBytes(),message.getBytes().length,InetAddress.getByName("127.0.0.1"),5000);
    ds.send(dp);
    ds.close();
    }
    }
      

  5.   


    Java 网络高级编程
    http://download.csdn.net/source/268895