您的位置:首页 > 编程语言 > Java开发

java自制服务器与客户端(Sock)

2016-04-23 11:35 417 查看
这是对ServerSock与Sock的学习。

是自我探究服务器接收以及响应。

这是个小程序。

原理:

用servlet监听端口。

sock发送消息到某个ip某个端口。

服务端:

package org.Sock;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class ServerSock {

public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
ServerSocket sock = new ServerSocket(80);

System.out.println("服务器开启成功...");

Socket s = sock.accept();

InputStream fis = s.getInputStream();

byte[] b  = new byte[1024];

int len=0;

while((len =fis.read(b))!=-1){
System.out.println(new String(b,0,len));
}

fis.close();

System.out.println("服务器关闭成功...");

}

}


客户端:

package org.Sock;

import java.io.File;
import java.io.FileInputStream;
import java.io.OutputStream;
import java.net.Socket;

public class UserSock {

public static void main(String[] args) {
// TODO Auto-generated method stub
Socket sock =null;
try{
sock = new Socket("127.0.0.1",80);

FileInputStream in = new FileInputStream(new File("c:/text.txt")    );

OutputStream out = sock.getOutputStream();

byte[] b = new byte[1024];

int len =0;
while((len=in.read(b))!=-1){
out.write(b, 0, len);
}
out.flush();
out.close();
in.close();

}catch(Exception e){

}
}
}


使用方法:

首先在c盘新建一个text.txt文件,在中写入你想发送的数据。

先运行ServerSock.java文件,其次是UserSock.java文件

显示结果:

服务器端:

服务器开启成功...
can you 都莫惹
服务器关闭成功...
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 服务器