亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? clientprocessor.java

?? 這里是一個構建簡單web服務器的部分源代碼
?? JAVA
字號:

import java.io.*;
import java.net.Socket;
import java.net.*;
import java.util.Date;
import java.util.LinkedList;
import java.util.List;
import java.util.StringTokenizer;


public class ClientProcessor extends Thread {
	private static List pool = new LinkedList();
	private String indexFileName = "index.html";
	private Log log = new Log();
	private int count;

	public ClientProcessor(Socket client,int count) {
		this.count = count;
		synchronized (pool) {
			pool.add(pool.size(), client);
			pool.notifyAll();
		}
	}

	public void run() {
		Socket client;
		while (true) {
			//利用線程池提高效率。
			synchronized (pool) {
				while (pool.isEmpty()) {
					try {
						pool.wait();
					} catch (InterruptedException e) {
						// TODO: handle exception
					}
				}
				client = (Socket) pool.remove(0);
			}

			try {
				String fileName;
				String contentType;
				String ip = client.getInetAddress().toString(); // 客戶機IP地址
				client.getInputStream();
				int port = client.getPort(); // 客戶機端口號
				

				
				//調用寫日志類寫日志
				log.writelog(ip.substring(1),port,count);
				
				OutputStream buffer = new BufferedOutputStream(client
						.getOutputStream());
				PrintStream out = new PrintStream(buffer);

				Reader in = new InputStreamReader(new BufferedInputStream(
						client.getInputStream()), "ASCII");

				StringBuffer requestLine = new StringBuffer();			
				int c;
				while (true) {
					c = in.read();
					if (c == '\r' || c == '\n')
						break;
					requestLine.append((char) c);
				}
				String get;
				get = requestLine.toString();

				// 記錄請求的日志
				System.out.println(get);

				StringTokenizer st = new StringTokenizer(get);
				String method = st.nextToken();
				String version = "";
				
				if (method.equals("GET")) {
					fileName = st.nextToken();
					if (fileName.endsWith("/"))
						fileName += indexFileName;
						if(fileName.indexOf(';') != -1)
							fileName = fileName.substring(1,fileName.indexOf(';'));
						else 
							fileName = fileName.substring(1);
					contentType = guessContentTypeFromName(fileName);
					if (st.hasMoreTokens()) {
						version = st.nextToken();
					}

					File theFile = new File(fileName);
					
					if (theFile.canRead()) {
						SessionProcessor sp = new SessionProcessor();
						String sid = sp.getsessionid(get);// 獲取web瀏覽器提交的sessionid
						sid = sp.session(sid);// 處理sessionid
						System.out.println(fileName + " requested.");
						DataInputStream fis = new DataInputStream(
								new BufferedInputStream(new FileInputStream(
										theFile)));
						byte[] theData = new byte[(int) theFile.length()];
						fis.readFully(theData);
						fis.close();
						if (version.startsWith("HTTP/1.1")) {
							out.println("HTTP/1.1 200 OK\r\n");
							Date now = new Date();
							out.println("Date: " + now + "\r\n");
							out.println("Server: WebServer/1.1\r\n");
							out.println("Content-length: " + theData.length
									+ "\r\n");
							out.println("Content-type: " + contentType
									+ "\r\n\r\n");
							sendfile(out, theFile); // 發送文件
							out.flush();
						}

						// 發送文件;可能是圖片或其他二進制數據
					//	out.println(theData);
						//out.flush();
					} else {
						if (version.startsWith("HTTP/1.1")) {
							out.println("HTTP/1.1 404 File Not Found\r\n");
							Date now = new Date();
							out.println("Date: " + now + "\r\n");
							out.println("Server: WebServer/1.1\r\n");
							out.println("Content-type: text/html\r\n\r\n");
						}
						out.println("<HTML>\r\n");
						out.println("<HEAD><TITLE>File Not Found</TITLE>\r\n");
						out.println("</HEAD>\r\n");
						out.println("<BODY>");
						out.println("<h1>HTTP Error 404: File Not Found</H1>\r\n");
						out.println("</BODY></HTML>/r/n");
						out.println();
					}
				} else if(method.equals("POST")){	
					
					try{
					while((c = in.read()) != -1){
						System.out.print((char)c);
					}
					System.out.println();
					in.close();
					}catch(IOException ex){
						System.err.println(ex);
					}
					
					fileName = st.nextToken();
					if (fileName.endsWith("/"))
						fileName += indexFileName;
						if(fileName.indexOf(';') != -1)
							fileName = fileName.substring(1,fileName.indexOf(';'));
						else 
							fileName = fileName.substring(1);
					contentType = guessContentTypeFromName(fileName);
					if (st.hasMoreTokens()) {
						version = st.nextToken();
					}

					File theFile = new File(fileName);
					
				}
			} catch (IOException ex) {
				// TODO: handle exception
			} finally {
				try {
					client.close();
				} catch (IOException ex) {
				}
			}
		}//while ends.
	}//run ends.

	public static String guessContentTypeFromName(String name) {
		if(name.endsWith(".html") || name.endsWith(".htm")){
			return "text/html";
		}
		else if(name.endsWith(".txt") || name.endsWith(".java")){
			return "text/plain";
		}
		else if(name.endsWith(".gif")){
			return "image/gif";
		}
		else if(name.endsWith(".class")){
			return "application/octet-stream";
		}
		else if(name.endsWith(".jpg") || name.endsWith(".jpeg")){
			return "image/jpeg";
		}
		else return "text/plain";
	}
	
	//把指定文件發送給Web瀏覽器
	public void sendfile(PrintStream outs, File file) {
		try {
			DataInputStream in = new DataInputStream(new FileInputStream(file));
			int len = (int) file.length();
			byte buf[] = new byte[len];
			in.readFully(buf);// 將文件數據讀入buf中
			outs.write(buf, 0, len);
			outs.flush();
			in.close();
		} catch (Exception e) {
			System.out.println("Error retrieving file.");
			System.exit(1);
		}
	}
	
	public void receiveFile(PrintStream ins){
		try{
			File file = new File("/");
		}catch (Exception e){
			System.out.println("Error push file.");
			System.exit(1);
		}
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91在线免费播放| 91免费视频大全| 亚洲3atv精品一区二区三区| 亚洲精品你懂的| 综合久久久久综合| 亚洲欧美日韩中文字幕一区二区三区 | 国产风韵犹存在线视精品| 极品少妇xxxx偷拍精品少妇| 蜜乳av一区二区三区| 蜜臀国产一区二区三区在线播放| 免费观看30秒视频久久| 美国十次综合导航| 国产一区啦啦啦在线观看| 国产在线精品一区二区夜色| 亚洲色图清纯唯美| 亚洲国产日韩a在线播放| 丝袜亚洲另类丝袜在线| 国产一区二区三区高清播放| 国产精品 日产精品 欧美精品| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 久久久欧美精品sm网站| 国产欧美一区二区精品秋霞影院 | 美女网站视频久久| 狠狠久久亚洲欧美| 91网站最新网址| 欧美精品自拍偷拍| 久久一留热品黄| 亚洲色图视频免费播放| 青娱乐精品在线视频| 成人福利视频网站| 欧美一区二区二区| 欧美激情一区二区| 亚洲高清免费观看高清完整版在线观看| 五月综合激情网| 国产成人在线影院| 欧美精选在线播放| 久久久久88色偷偷免费| 亚洲va欧美va人人爽| 成人av中文字幕| 日韩欧美卡一卡二| 亚洲免费伊人电影| 国产米奇在线777精品观看| 91豆麻精品91久久久久久| 精品国产乱码久久久久久久| 亚洲欧美成人一区二区三区| 蜜桃视频免费观看一区| 在线视频国内自拍亚洲视频| 日本一区二区三区四区在线视频| 日韩精品一区第一页| 91蜜桃免费观看视频| 精品国产乱码91久久久久久网站| 亚洲亚洲人成综合网络| 成人av中文字幕| 国产亚洲一区二区三区在线观看| 一区二区三区 在线观看视频| 国内成人自拍视频| 欧美日本高清视频在线观看| 久久久亚洲精品石原莉奈| 久久精品亚洲精品国产欧美 | 国产精品女人毛片| 蜜桃av一区二区| 成人国产视频在线观看| 国产网站一区二区| 久久精品国产一区二区三| 在线观看视频欧美| 日本一区二区成人| 激情综合网激情| 欧美三级电影在线看| 国产精品青草综合久久久久99| 亚洲大片在线观看| 在线影院国内精品| 国产日韩三级在线| 国产一区二区三区四| 欧美二区乱c少妇| 亚洲免费在线观看视频| 成人污视频在线观看| 久久久久国产精品麻豆ai换脸| 五月激情丁香一区二区三区| 色欧美片视频在线观看在线视频| 国产日韩精品一区二区三区在线| 日韩国产精品大片| 欧美在线综合视频| 亚洲国产精品黑人久久久| 国产一区二区三区蝌蚪| 91精品国产色综合久久不卡蜜臀 | 国产真实乱子伦精品视频| 欧美男同性恋视频网站| 亚洲国产另类av| 色哟哟一区二区在线观看| 久久欧美中文字幕| 国产大陆精品国产| 日本一区二区三区国色天香| 国产一区二区三区四区五区美女| 日韩欧美高清dvd碟片| 奇米影视7777精品一区二区| 欧美一区二区三区日韩视频| 一区二区三区在线观看动漫| www.亚洲色图.com| 国产精品卡一卡二| 99精品视频在线免费观看| 日本一区二区三区四区在线视频| 国产福利一区二区| 亚洲国产精品成人综合 | 国产丶欧美丶日本不卡视频| 国产欧美1区2区3区| 国产成人av影院| 欧美电影免费观看高清完整版在线 | 国内一区二区在线| 久久婷婷综合激情| 免费人成在线不卡| 日韩一二在线观看| 国产一区二区三区免费| 国产精品福利一区| 欧美人与禽zozo性伦| 久久99久久精品| 中文字幕电影一区| 99久久免费视频.com| 一区二区三区免费网站| 91.com视频| 国产美女视频91| 亚洲va欧美va天堂v国产综合| 日韩欧美一级在线播放| 成人免费高清视频| 午夜精品一区二区三区电影天堂 | 五月天亚洲婷婷| 久久一留热品黄| 色天天综合色天天久久| 国内精品国产成人国产三级粉色 | 色国产综合视频| 看片的网站亚洲| 国产精品系列在线| 欧美在线一二三四区| 国产精品一卡二卡在线观看| 亚洲激情男女视频| 久久久精品国产免大香伊| 91国产成人在线| 国产成人精品亚洲午夜麻豆| 亚洲一二三区在线观看| 久久久久久久综合日本| 在线观看日韩高清av| 国产一区二区看久久| 亚洲一区二区av电影| 中文字幕av一区二区三区免费看| 欧美乱熟臀69xxxxxx| 99久久婷婷国产综合精品| 精品亚洲国产成人av制服丝袜| 一区二区欧美国产| 国产色一区二区| 宅男在线国产精品| 色视频欧美一区二区三区| 国产高清在线精品| 久久国产三级精品| 久久av中文字幕片| 日韩电影一二三区| 亚洲主播在线观看| 亚洲柠檬福利资源导航| 国产欧美综合在线观看第十页| 欧美一区二区三区在线观看 | 欧美丰满美乳xxx高潮www| 91蝌蚪国产九色| 99热这里都是精品| 色婷婷综合激情| 91麻豆国产香蕉久久精品| 不卡欧美aaaaa| 成人黄色777网| 懂色中文一区二区在线播放| 国产乱码精品1区2区3区| 九九热在线视频观看这里只有精品| 亚洲高清久久久| 亚洲成人av一区二区| 五月天一区二区三区| 亚洲成人动漫精品| 五月婷婷色综合| 日本人妖一区二区| 蜜臀av一区二区在线观看| 激情综合色播五月| 国产又黄又大久久| 高清不卡在线观看av| 国产福利视频一区二区三区| 91精品国产综合久久婷婷香蕉| 在线观看不卡一区| 欧美日韩成人综合在线一区二区| 欧美图区在线视频| 欧美一区二区久久| 久久伊人蜜桃av一区二区| 日本一区二区三区视频视频| 亚洲欧美一区二区在线观看| 国产精品乱码人人做人人爱| 亚洲国产一区在线观看| 免费在线视频一区| 国产一区二区精品在线观看| 成人短视频下载| 欧美午夜精品免费| 日韩午夜激情电影| 中文字幕国产一区| 中文字幕av不卡| 亚洲一区二区四区蜜桃| 青青草国产精品亚洲专区无| 国产精品影音先锋| 成人免费毛片aaaaa**|