ObjectServer.java
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class ObjectServer {
public static int PORT = 8080;
public static void main(String[] agrs) {
ServerSocket s = null;
Socket socket = null;
ObjectOutputStream oos = null;
ObjectInputStream ois = null;
try {
s = new ServerSocket(PORT);
System.out.println("ServerSocket Start:"+s);
socket = s.accept();
System.out.println("Connection accept socket:"+socket);
ois = new ObjectInputStream(socket.getInputStream());
Message message = (Message)ois.readObject();
System.out.println(message.toString());
message.setContent("client received");
oos = new ObjectOutputStream(socket.getOutputStream());
oos.writeObject(message);
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
ois.close();
oos.close();
socket.close();
s.close();
} catch (Exception e2) {
}
}
}
}
ObjectClient.java
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.Socket;
public class ObjectClient {
public static void main(String[] args) {
Socket socket = null;
ObjectOutputStream oos = null;
ObjectInputStream ois = null;
try {
socket = new Socket("127.0.0.1", ObjectServer.PORT);
System.out.println("Socket=" + socket);
Message message = new Message("1", "Client sent");
oos = new ObjectOutputStream(socket.getOutputStream());
oos.writeObject(message);
ois = new ObjectInputStream(socket.getInputStream());
message = (Message)ois.readObject();
System.out.println(message.toString());
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
ois.close();
oos.close();
socket.close();
} catch (Exception e2) {
}
}
}
}
Message.java
import java.io.Serializable;
the object should be serializable for socket transfer
public class Message implements Serializable{
private static final long serialVersionUID = 1L;
private String id;
private String content;
public Message(String id, String content){
this.id = id;
this.content = content;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public String toString(){
return "id = " + id + " content = " + content;
}
}
分享到:
相关推荐
a simple java socket program with thread
几个用java写的小程序,实现了bio和nio
简单的用户登录检查,本人对照视频做了一边,后
import java.net.Socket ;public class MyServer { public static void main ( String [] args ){ ServerSocket serverSocket = null ; Socket socket = null ; DataInputStream dataInputStream = null ; ...
//客户端程序 import java.io.*; import java.net.*; import java.awt.*;...public class SocketClientExample extends Frame implements ActionListener { Label label=new Label("输入聊天信息");
Classic Java book. Chapter 1. Why Networked Java? Section 1.1. What Can a Network Program Do? Section 1.2. Security Section 1.3. But Wait! There's More! Chapter 2. Basic Network Concepts ...
第 一 章 Java概 述 § 1.1 Java语 言 出 现 的 背景 、 影 响 及 应 用 前 景 一 、 背 景 最 近 一 年 多 来 ,在 Internet上 出 现 的 特 别 吸 引 人 的 事 件 就是 Ja va语 言 和 用 Java编 写 的 浏 览 器...
public class Example2 extends java.applet.Applet implements Runnable { Thread circleThread; public void start() { if (circleThread==null) { circleThread=new Thread(this); circleThread.start...
两者通过Socket.IO链接在一起通过以下链接在原始教程中找到有关此示例的更多信息: : 所有这些示例都是使用JSweet API(糖果)以Java编写的。 然后由JSweet转译器将它们转译为JavaScript。 ###尝试: : : 建立它只...
more complete access to socket options; and scalable I/O. The example code is also modified to take advantage of new language features such as annotations, enumerations, as well as generics and ...
4、com.baijob.commonTools.net.SocketUtil socket工具类。 isUsableLocalPort() 检测本地某个端口是否可用(可用是指没有被其他程序占用) isValidPort()是否是符合规范的端口号 longToIpv4()将long转换为ipv4...
套接字服务器演示 ... [java] Apr 20, 2013 7:03:13 AM example.Log info [java] INFO: Waiting for connections on port 7000 for 15000 milliseconds (Ctrl-C to exit) 在另一个控制台中,运行 telnet localhost
Java实现的RPC框架,主要用到的技术有: 1. 动态代理:jdk的动态代理。 2. 序列化和反序列化:java的序列化。 3.网络通信:socket通信(BIO方式)。 4. 反射、注解
java查看sun包源码 Java ...java -agentlib:jdwp=transport=dt_socket,address=5005,server=y,suspend=n -jar xxx.jar,就是开启了远程debug,自己本地想测试,可以使用下面这个脚本在当前项目目录
communication.tcp.example.TCPClientUnit体现,重写revDataAndParse方法如下: /** * 处理数据将数据置于队列中,或者直接解析....... */ protected void revDataAndParse(byte[] data)...
(Example for: Thread, Runnable, Socket, ServerSocket) SampleUsingChecksumClasses.cs: Using checksum classes. (Example for: Adler32, CRC32) SampleUsingCollection.cs: Using collection classes. (Example...
package com.example.androidsockettest; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java...
Example Code snippet below dumps TCP Socket instances found in heap HeapImage hi = HeapUnit.captureHeap(); for(HeapInstance i: hi.instances(SocketImpl.class)) { // fd field in SocketImpl class is ...
使用web形式实现语音识别
大学毕业设计,聊天室的设计与实现。本网络聊天系统基于Java应用程序设计,以Client/Server为开发模式,以...系统还利用Java提供的Socket类和多线程功能,在单个程序中同时运行多个不同进程,从而实现点对点的聊天。