javaÈçºÎ»ñÈ¡ÕæÊµµÄIP
Èç¹û·þÎñÆ÷Èç¹ûûÓвÉÓ÷´Ïò´úÀí£¬¶øÇÒ¿Í»§¶ËûÓÐÓÃÕýÏò´úÀíµÄ»°£¬
ÄÇô¿ÉÒÔ»ñÈ¡¿Í»§¶ËµÄÕæÊµIPµØÖ·request.getRemoteAddr()
Èç¹û·þÎñÆ÷Èç¹ûûÓвÉÓ÷´Ïò´úÀí£¬¶øÇÒ¿Í»§¶ËÓÐÓÃÕýÏò´úÀíµÄ»°£¬
ÄÇôͨ¹ýrequest.getRemoteAddr()»ñÈ¡¿Í»§¶ËµÄIPµØÖ·Êǿͻ§¶Ë µÄ´úÀí·þÎñÆ÷µÄµØÖ·£¬²¢²»Êǿͻ§¶ËµÄÕæÊµµØÖ·£¬
¶øÇÒÈç¹û¿Í»§¶ËʹÓõÄÊǶà²ã´úÀíµÄ»°£¬·þÎñÆ÷»ñµÃµÄ¿Í»§¶ËµØÖ·Êǿͻ§¶ËµÄ×îÍâΧ´úÀí·þÎñÆ÷µÄµØÖ·
Èç¹û·þÎñÆ÷Èç¹û²ÉÓ÷´Ïò´úÀí·þÎñÆ÷£¬²»¹Ü¿Í»§¶Ë²ÉÓõÄÊǺÎÖÖ·½Ê½·ÃÎÊ·þÎñÆ÷£¬
·þÎñÆ÷ͨ¹ýrequest.getRemoteAddr()¶¼½«ÊÇ·´Ïò´úÀí·þÎñÆ÷µØÖ·£¬
¶øÇÒ·þÎñÆ÷²ÉÓõÄÊǶà²ã·´Ïò´úÀí·þÎñÆ÷µÄ»°£¬·þÎñÆ÷ͨ¹ýrequest.getRemoteAddr()
¶¼½«ÊÇ·þÎñÆ÷×îÀïÃæ·´Ïò´úÀí·þÎñÆ÷µØÖ·
·þÎñÆ÷ͨ¹ýrequest.getHeader("x-forwarded-for") À´ÅжÏ(°üÀ¨¶à²ã·´Ïò´úÀí·þÎñÆ÷)µÈ·½Ê½£¬
¿ÉÒÔ»ñµÃ¿Í»§¶ËµØÖ·£¬Èç¹û¿Í»§¶ËûÓÐʹÓôúÀíµÄ»°£¬ÄÇôÕâ¸öµØÖ·¾ÍÊǿͻ§¶ËµÄÕæÊµµØÖ·£¬
Èç¹û¿Í»§¶ËʹÓôúÀíµÄ»°£¬²»¹ýÕâ¸öµØÖ·²¢²»Êǿͻ§¶ËµÄÕæÊµµØÖ·£¬ÊÇÕâ¸ö´úÀí·þÎñÆ÷µÄµØÖ·
&
Ïà¹ØÎĵµ£º
Java NIO APIÏê½â
ÔÚJDK
1.4ÒÔǰ£¬JavaµÄIO²Ù×÷¼¯ÖÐÔÚjava.ioÕâ¸ö°üÖУ¬ÊÇ»ùÓÚÁ÷µÄ×èÈû£¨blocking£©API¡£¶ÔÓÚ´ó¶àÊýÓ¦ÓÃÀ´Ëµ£¬ÕâÑùµÄAPIʹÓúܷ½
±ã£¬È»¶ø£¬Ò»Ð©¶ÔÐÔÄÜÒªÇó½Ï¸ßµÄÓ¦Óã¬ÓÈÆäÊÇ·þÎñ¶ËÓ¦Óã¬ÍùÍùÐèÒªÒ»¸ö¸üΪÓÐЧµÄ·½Ê½À´´¦ÀíIO¡£´ÓJDK 1.4Æð£¬NIO
API×÷Ϊһ¸ö»ùÓÚ»º³åÇø£¬²¢ÄÜÌṩ·Ç×èÈû(non-blo ......
ÀàµÄ³õʼ»¯ºÍ¶ÔÏó³õʼ»¯ÊÇ JVM ¹ÜÀíµÄÀàÐÍÉúÃüÖÜÆÚÖзdz£ÖØÒªµÄÁ½¸ö»·½Ú£¬Google ÁËÒ»±éÍøÂ磬ÓйØÀà×°ÔØ»úÖÆµÄÎÄÕµ¹ÊDz»ÉÙ£¬È»¶øÀà³õʼ»¯ºÍ¶ÔÏó³õʼ»¯µÄÎÄÕ²¢²»¶à£¬ÌرðÊÇ´Ó×Ö½ÚÂëºÍ JVM ²ã´ÎÀ´·ÖÎöµÄÎÄÕ¸üÊÇÏÊÓÐËù¼û¡£
±¾ÎÄÖ÷Òª¶ÔÀàºÍ¶ÔÏó³õʼ»¯È«¹ý³Ì½øÐзÖÎö£¬Í¨¹ýÒ»¸öʵ¼ÊÎÊÌâÒýÈ룬½«Ô´´úÂëת»»³É JVM ×Ö½ÚÂëºó£¬ ......
String fm = "46+5*(120-37)";
String[] item = fm.split("[+-/*/()]");
for(String it: item){
System.out.print(it+" ");
}
ÕýÔò±í´ïʽÖРתÒ壺 * ==> /* ......
ÖÚËùÖÜÖª£¬ÔÚ³ÌÐò¿ª·¢ÖУ¬ÄÑÃâ»áÓöµ½ÐèҪƥÅä¡¢²éÕÒ¡¢Ìæ»»¡¢ÅжÏ×Ö·û´®µÄÇé¿ö·¢Éú£¬¶øÕâЩÇé¿öÓÐʱÓֱȽϸ´ÔÓ£¬Èç¹ûÓô¿±àÂ뷽ʽ½â¾ö£¬ÍùÍù»áÀ˷ѳÌÐòÔ±µÄʱ¼ä¼°¾«Á¦¡£Òò´Ë£¬Ñ§Ï°¼°Ê¹ÓÃÕýÔò±í´ïʽ£¬±ã³ÉÁ˽â¾öÕâһì¶ÜµÄÖ÷ÒªÊֶΡ£
´ó¼Ò¶¼ÖªµÀ£¬ÕýÔò±í´ïʽÊÇÒ»ÖÖ¿ÉÒÔÓÃÓÚģʽƥÅäºÍÌæ»»µÄ¹æ·¶£¬Ò»¸öÕýÔò±í´ïʽ¾ÍÊÇÓÉÆÕͨµ ......