1. 自己动手写一个Web服务器
import java.io.FileInputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class Server
{
public static void main(String args[]){
try{
ServerSocket server = null;
try {
server = new ServerSocket(9999);
} catch (Exception e) {
System.out.println("Error:" + e);
System.exit(-1);
}
Socket sock = null;
try {
sock = server.accept();
} catch (Exception e) {
System.out.println("accept request fail!");
System.exit(-1);
}
FileInputStream in = new FileInputStream("C:\\Users\\yufei\\eclipse-workspace\\web-day4\\1.html");
OutputStream out = sock.getOutputStream();
int len = 0;
byte buffer[] = new byte[1024];
while((len = in.read(buffer)) >0 ){
out.write(buffer,0,len);
}
in.close();
sock.close();
server.close();
}catch(Exception e){
}
}
}
命令行编译和运行
>javac Server.java
>java Server
http://localhost 访问机器
:9999 端口号表示的访问的具体服务器,不同服务器会监听不同的端口
常用协议的工作端口
http 80
smtp 25
pop3 110
ftp 23
https 443