知识大全 在服务端接收和发送数据
Posted 知
篇首语:好人的天生欲望是知识。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 在服务端接收和发送数据相关的知识,希望对你有一定的参考价值。
Java网络编程从入门到精通(26):在服务端接收和发送数据 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
在建立完ServerSocket对象后 通过accept方法返回的Socket对象 服务端就可以和客户端进行数据交互
Socket类和ServerSocket类都有两个得到输入输出流的方法 getInputStream和getOutputStream 对于Socket类而言 使用getInputStream方法得到的InputStream是从服务端获取数据 而getOutputStream方法得到的OutputStream是向服务端发送数据 而ServerSocket的getInputStream和getOutputStream方法也类似 InputStream从客户端读取数据 OutputStream向客户端发送数据 下面的代码是一个接收HTTP请求 并返回HTTP请求头信息的程序 它演示了ServerSocket类如何读取和发送来自客户端的数据
package server;
import *;import java io *;
public class HttpEchoServer extends Thread private Socket socket; public void run() try InputStreamReader isr = new InputStreamReader(socket getInputStream()); BufferedReader br = new BufferedReader(isr); OutputStreamWriter osw = new OutputStreamWriter(socket getOutputStream()); osw write( HTTP/ OK\\r\\n\\r\\n ); String s = ; while (!(s = br readLine()) equals( )) osw write( <><body> + s + <br></body></> ); osw flush(); socket close(); catch (Exception e) public HttpEchoServer(Socket socket) this socket = socket; public static void main(String[] args) throws Exception ServerSocket serverSocket = new ServerSocket( ); System out println( 服务器已经启动 端口 ); while (true) Socket socket = serverSocket accept(); new HttpEchoServer(socket) start();
编译并运行HttpEchoServer后 在IE的地址栏中输入URL 输出结果如图 所示
图
cha138/Article/program/Java/hx/201311/26446相关参考