📄 httpserver.java
字号:
package cn.netjava.feeserver.servletcontainer;
import java.net.*;
/**
*
* 计费查询服务器:
* 启动ServerSocket,接受客户端的请求,生成Socket连结对象
* @author www.NetJava.cn
*
*/
public class HttpServer {
/**
* 启动服务器
*/
public void await(){
ServerSocket ss=null;
try{
LogManager.info(" server is start on ...: "+port);
ss=new ServerSocket(port);
}catch(java.io.IOException ioe){
LogManager.error(" create ServerSocket error: "+ioe);
System.exit(1);
}
while(!isShutDowdn()){
Socket socket=null;
try{
//得到与客户端的连结对象:
socket=ss.accept();
LogManager.info("incoming client: "+socket.getRemoteSocketAddress());
//测试输入
// testSocket(socket);
DispatchSocket disp=new DispatchSocket(socket);
}catch(java.io.IOException ioe){
LogManager.error("warit client error :"+ioe);
}
}
}
//测试Socket的输入输出
void testSocket(Socket socket){
try{
java.io.InputStream ips=socket.getInputStream();
byte[] buffer =new byte[1024];
ips.read(buffer);
String inStr=new String(buffer);
System.out.println("<--:"+inStr);
String html="<html><title>NetJava.cn欢迎你!这是我们的测试网面</title>"
+"<body>第一行<p></p>打出一条线<hr><br>服务器系统当前时间: "+System.currentTimeMillis()
+"</html>";
java.io.OutputStream ops=socket.getOutputStream();
ops.write(html.getBytes());
ops.flush();
socket.close();
}catch(Exception ef){
LogManager.error(ef.toString());
// ef.printStackTrace();
}
}
public void setShutDowdn(boolean shutDowdn) {
this.shutDowdn = shutDowdn;
}
public boolean isShutDowdn() {
return shutDowdn;
}
public void setPort(int port) {
this.port = port;
}
public int getPort() {
return port;
}
/**服务器端口号码*/
private int port=9090;
/**设定停止命令*/
private boolean shutDowdn=false;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -