package 手写服务器httpserver_195_准备_Socket入门_练习;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
/**
-
1.创建服务器 并启动
-
2.不用解决客户端;客户端已经创建好即我们的浏览器
*/
public class Server {//Server 服务器
private ServerSocket server;public static void main(String[] args) {
Server server = new Server(); server.start();//调用
}
/**-
创建一个方法 便于使用:启动
*/
public void start(){//start启动
try {
server = new ServerSocket(8888);this.receive();//调用;启动时就准备接收
} catch (IOException e) {
e.printStackTrace();
}
}
/** -
接收客户端
*/
@SuppressWarnings(“unused”)//抑制警告(未使用)
private void receive(){//receive接收
try {
Socket client = server.accept();//Server 服务器;accept接受
StringBuilder sb = new StringBuilder();//StringBuilder可变的字符序列
String msg = null;//接收客户端的请求信息
//读取
BufferedReader br = new BufferedReader(
new InputStreamReader(client.getInputStream()));//InputStreamReader转换流
while((msg = br.readLine()).length()>0){//readLine逐行读取
sb.append(msg);//append附加
sb.append("\r\n");//换行
if(msg ==null){
break;
}
}
//requestInfo 请求信息
String requestInfo = sb.toString().trim();//trim修剪
//控制台输出 测试
System.out.println(sb.toString());} catch (IOException e) {
e.printStackTrace();
}
}
/** -
停止
*/
public void stop(){//stop停止
}
}
//结果-------------------------------------
启动服务器
浏览器输入
控制台输出;如果控制台没有输出刷新下浏览器
-