Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ÓÃjavaʵÏÖµÄÒ»¸ö¼òµ¥web·þÎñÆ÷³ÌÐò

Ò»¡¢Ê×ÏÈÀ´¿´Ò»ÏÂhttpµÄ±¨ÎĽṹ
1¡¢ÇëÇó±¨ÎÄ
Ò»¸öHTTPÇëÇó±¨ÎÄÓÉÇëÇóÐУ¨request line£©¡¢ÇëÇóÍ·²¿£¨header£©¡¢¿ÕÐкÍÇëÇóÊý¾Ý4¸ö²¿·Ö×é³É£¬ÏÂͼ¸ø³öÁËÇëÇó±¨ÎĵÄÒ»°ã¸ñʽ¡£
(1)ÇëÇóÐÐ
ÇëÇóÐÐÓÉÇëÇó·½·¨×ֶΡ¢URL×ֶκÍHTTPЭÒé°æ±¾×Ö¶Î3¸ö×Ö¶Î×é³É£¬ËüÃÇÓÿոñ·Ö¸ô¡£ÀýÈ磬GET /index.html HTTP/1.1¡£
HTTPЭÒéµÄÇëÇó·½·¨ÓÐGET¡¢POST¡¢HEAD¡¢PUT¡¢DELETE¡¢OPTIONS¡¢TRACE¡¢CONNECT¡£ÕâÀï½éÉÜ×î³£ÓõÄGET·½·¨ºÍPOST·½·¨¡£
GET£ºµ±¿Í»§¶ËÒª´Ó·þÎñÆ÷ÖжÁÈ¡ÎĵµÊ±£¬Ê¹ÓÃGET·½·¨¡£GET·½·¨ÒªÇó·þÎñÆ÷½«URL¶¨Î»µÄ×ÊÔ´·ÅÔÚÏìÓ¦±¨ÎĵÄÊý¾Ý²¿·Ö£¬»ØË͸ø¿Í»§¶Ë¡£Ê¹ÓÃGET·½·¨Ê±£¬ÇëÇó²ÎÊýºÍ¶ÔÓ¦µÄÖµ¸½¼ÓÔÚURLºóÃ棬ÀûÓÃÒ»¸öÎʺţ¨“?”£©´ú±íURLµÄ½áβÓëÇëÇó²ÎÊýµÄ¿ªÊ¼£¬´«µÝ²ÎÊý³¤¶ÈÊÜÏÞÖÆ¡£ÀýÈ磬/index.jsp?id=100&op=bind¡£
POST£ºµ±¿Í»§¶Ë¸ø·þÎñÆ÷ÌṩÐÅÏ¢½Ï¶àʱ¿ÉÒÔʹÓÃPOST·½·¨¡£POST·½·¨½«ÇëÇó²ÎÊý·â×°ÔÚHTTPÇëÇóÊý¾ÝÖУ¬ÒÔÃû³Æ/ÖµµÄÐÎʽ³öÏÖ£¬¿ÉÒÔ´«Êä´óÁ¿Êý¾Ý¡£
(2)ÇëÇóÍ·²¿
ÇëÇóÍ·²¿Óɹؼü×Ö/Öµ¶Ô×é³É£¬Ã¿ÐÐÒ»¶Ô£¬¹Ø¼ü×ÖºÍÖµÓÃÓ¢ÎÄðºÅ“:”·Ö¸ô¡£ÇëÇóÍ·²¿Í¨Öª·þÎñÆ÷ÓйØÓÚ¿Í»§¶ËÇëÇóµÄÐÅÏ¢£¬µäÐ͵ÄÇëÇóÍ·ÓУº
User-Agent£º²úÉúÇëÇóµÄä¯ÀÀÆ÷ÀàÐÍ¡£
Accept£º¿Í»§¶Ë¿Éʶ±ðµÄÄÚÈÝÀàÐÍÁÐ±í¡£
Host£ºÇëÇóµÄÖ÷»úÃû£¬ÔÊÐí¶à¸öÓòÃûͬ´¦Ò»¸öIPµØÖ·£¬¼´ÐéÄâÖ÷»ú¡£
(3)¿ÕÐÐ
×îºóÒ»¸öÇëÇóÍ·Ö®ºóÊÇÒ»¸ö¿ÕÐУ¬·¢Ëͻسµ·ûºÍ»»Ðзû£¬Í¨Öª·þÎñÆ÷ÒÔϲ»ÔÙÓÐÇëÇóÍ·¡£
(4)ÇëÇóÊý¾Ý
ÇëÇóÊý¾Ý²»ÔÚGET·½·¨ÖÐʹÓ㬶øÊÇÔÚPOST·½·¨ÖÐʹÓá£POST·½·¨ÊÊÓÃÓÚÐèÒª¿Í»§Ìîд±íµ¥µÄ³¡ºÏ¡£ÓëÇëÇóÊý¾ÝÏà¹ØµÄ×ʹÓõÄÇëÇóÍ·ÊÇContent-TypeºÍContent-Length¡£
2¡¢ÏìÓ¦±¨ÎÄ
ÏìÓ¦±¨Îĵĸñʽ´óÌåÉϺÍÇëÇó±¨ÎÄÀàËÆ£¬Ö»ÊǵÚÒ»ÐÐÓÐËù²»Í¬£¬¶ÁÕß¿ÉÒÔ×Ô¼ºÔÚÍøÉϲéÕÒÕâ·½ÃæµÄ½éÉÜ£¬ÕâÀï²»ÔÙ׸Êö¡£
¶þ¡¢³ÌÐòµÄʵÏÖ
³ÌÐòµÄʵÏÖ²½ÖèÈçÏ£º
1¡¢½ÓÊÕ¿Í»§¶Ëä¯ÀÀÆ÷µÄÇëÇó£»
2¡¢´´½¨Ò»¸öеÄỊ̈߳¬ÓÃÓÚ´¦Àí¸Ã´ÎÇëÇó£»
3¡¢¶ÁÈ¡±¨ÎÄÊý¾Ý£¬Åжϱ¨ÎÄÕýÈ·Óë·ñ£¬·ÖÎö±¨ÎÄÄÚÈÝ£»
4¡¢´´½¨ÏìÓ¦±¨ÎÄ£¬·¢Ë͵½¿Í»§¶Ë£»
5¡¢½áÊø¸Ã´¦ÀíỊ̈߳¬´¦ÀíÆäËû¿Í»§ÇëÇó£»
³ÌÐò´úÂëÈçÏ£º
import java.net.*;
import java.io.*;
import java.util.*;
import java.lang.*;
public class WebServer {
public static void main(String [] args){
int port;
ServerSocket server_socket;
try{
port=Integer.parseInt(args[0]);
}
catch (Exception e){


Ïà¹ØÎĵµ£º

Java NIO APIÏê½â

 
Java NIO APIÏê½â
ÔÚJDK
1.4ÒÔÇ°£¬JavaµÄIO²Ù×÷¼¯ÖÐÔÚjava.ioÕâ¸ö°üÖУ¬ÊÇ»ùÓÚÁ÷µÄ×èÈû£¨blocking£©API¡£¶ÔÓÚ´ó¶àÊýÓ¦ÓÃÀ´Ëµ£¬ÕâÑùµÄAPIʹÓúܷ½
±ã£¬È»¶ø£¬Ò»Ð©¶ÔÐÔÄÜÒªÇó½Ï¸ßµÄÓ¦Óã¬ÓÈÆäÊÇ·þÎñ¶ËÓ¦Óã¬ÍùÍùÐèÒªÒ»¸ö¸üΪÓÐЧµÄ·½Ê½À´´¦ÀíIO¡£´ÓJDK 1.4Æð£¬NIO
API×÷Ϊһ¸ö»ùÓÚ»º³åÇø£¬²¢ÄÜÌṩ·Ç×èÈû(non-blo ......

JavaʵÏÖÁ´±í

class Link
{
private Node head;
public Link(Node head)
{
this.head=head;
}
public void addNode(Node node)
{
Node p=head;
while(true)
{
if(!p.hasNext())
{
p.setNext(node);
break;
}
p=p.getNext();
}
}
//²åÈë½Ú
public void insertNode(Node p,Node q)
{
q.setNext(p.getNext());
p.se ......

JavaỊ̈߳ºÏ̵߳ĵ÷¶È ÓÅÏȼ¶

ÓëÏß³ÌÐÝÃßÀàËÆ£¬Ï̵߳ÄÓÅÏȼ¶ÈÔÈ»ÎÞ·¨±£ÕÏÏ̵߳ÄÖ´ÐдÎÐò¡£Ö»²»¹ý£¬ÓÅÏȼ¶¸ßµÄÏ̻߳ñÈ¡CPU×ÊÔ´µÄ¸ÅÂʽϴó£¬ÓÅÏȼ¶µÍµÄ²¢·Çû»ú»áÖ´ÐС£
 
Ï̵߳ÄÓÅÏȼ¶ÓÃ1-10Ö®¼äµÄÕûÊý±íʾ£¬ÊýÖµÔ½´óÓÅÏȼ¶Ô½¸ß£¬Ä¬ÈϵÄÓÅÏȼ¶Îª5¡£
 
ÔÚÒ»¸öÏß³ÌÖпªÆôÁíÍâÒ»¸öÐÂỊ̈߳¬ÔòпªÏ̳߳ÆΪ¸ÃÏ̵߳Ä×ÓỊ̈߳¬×ÓÏ̳߳õʼÓÅÏȼ¶Ó븸 ......

Effective Java: Item 1

Static Factory Methods
Four Advantages:
1) have names
2) not required to create a new object each time they are invoked
3) return an object of any subtype of their return type
4) reduce the verbosity of creating parameterized type instances.(for example: newInstance() method) ......

Java AppletÓëJava ApplicationµÄÇø±ð

Java AppletÓëJava ApplicationµÄÇø±ð
ÔÚJavaÓïÑÔÖУ¬Äܹ»¶ÀÁ¢ÔËÐеijÌÐò³ÆΪJavaÓ¦ÓóÌÐò£¨Application£©¡£JavaÓïÑÔ»¹ÓÐÁíÍâÒ»ÖÖ³ÌÐò——Applet³ÌÐò¡£Applet³ÌÐò£¨Ò²³ÆJavaС³ÌÐò£©ÊÇÔËÐÐÓÚ¸÷ÖÖÍøÒ³ÎļþÖУ¬ÓÃÓÚÔöÇ¿ÍøÒ³µÄÈË»ú½»»¥¡¢¶¯»­ÏÔʾ¡¢ÉùÒô²¥·ÅµÈ¹¦ÄܵijÌÐò¡£
     Java Appletº ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ