˵˵¶Ôjava nioµÄһЩ¸öÈË×ܽá
Ê×ÏÈÁ˽âÏÂËùνµÄjava nioÊǸöʲô¶«Î÷£¡
IOÊÇ¿¿×Ö·û»ò×Ö½Ú½øÐд«Ê䣬±È½ÏÂý£¡ ¶øNIOÊÇ¿¿¿é£¬ Ò²¾ÍÏ൱ÓÚÒ»¸öBuffer£¬ Ò»¿éÒ»¿é
µÄ´«Ê䣬 ËٶȽϿì
£¡ ͬʱ¼ÓÈëÁ˶àÏß³Ì
µÄ¿ØÖÆ£¬ Ò»¸öNIOÁ÷¿ÉÒÔͬʱ´«Êä¶à¸ö¿éµÈ£¬ Ò²¾ÍÊÇËùνµÄÒì²½´«Êä
£»
´«Í³
µÄ²¢·¢ÐÍ
·þÎñÆ÷Éè¼ÆÊÇÀûÓÃ×èÈûÐÍÍøÂçI/O
ÒÔ¶àÏ̵߳Äģʽ£¨Ò»¸öSOCKETÁ´½Ó£¬·þÎñ¶Ë¾ÍÆô¶¯Ò»¸öÏ߳̽ÓÊÜ·þÎñ
£©À´ÊµÏֵģ¬È»¶øÓÉ
ÓÚϵͳ³£³£ÔÚ½øÐÐÍøÂç¶Áдʱ´¦ÓÚ×èÈû״̬£¬»á´ó´óÓ°ÏìϵͳµÄÐÔÄÜ
£»×ÔJava1. 4 ¿ªÊ¼ÒýÈë
ÁËNIO(ÐÂI/O) API£¬Í¨¹ýʹÓ÷Ç×èÈûÐÍ
I/O
£¬ÊµÏÖÁ÷³©µÄÍøÂç¶Áд²Ù×÷£¬Îª¿ª·¢¸ßÐÔÄܲ¢·¢
ÐÍ·þÎñÆ÷³ÌÐòÌṩÁËÒ»¸öºÜºÃµÄ½â¾ö·½°¸¡£Õâ¾ÍÊÇjava nio
Ê×ÏÈÀ´¿´Ï´«Í³µÄ×èÈûÐÍÍøÂç I/OµÄ²»×ã Java ƽ̨´«Í³µÄI/O ϵͳ¶¼ÊÇ»ùÓÚByte£¨×Ö½Ú£©ºÍStream£¨Êý¾ÝÁ÷£©µÄ£¬ÏàÓ¦µÄI/O ²Ù×÷¶¼ÊÇ×èÈûÐ͵Ä
£¬
ËùÒÔ·þÎñÆ÷³ÌÐòÒ²²ÉÓÃ×èÈûÐÍI/O
½øÐÐÊý¾ÝµÄ¶Á¡¢Ð´²Ù×÷¡£±¾ÎÄÒÔTCP³¤Á¬½ÓģʽÀ´ÌÖÂÛ²¢·¢ÐÍ·þÎñÆ÷µÄÏà¹ØÉè¼Æ£¬ÎªÁËʵÏÖ·þÎñÆ÷³ÌÐòµÄ²¢·¢ÐÔÒªÇó£¬ÏµÍ³ÓÉÒ»¸öµ¥¶ÀµÄÖ÷Ïß³ÌÀ´¼àÌýÓû§·¢ÆðµÄ
Á¬½ÓÇëÇó£¬Ò»Ö±´¦ÓÚ×èÈû״̬£»µ±ÓÐÓû§Á¬½ÓÇëÇóµ½À´Ê±£¬³ÌÐò¶¼»áÆôÒ»¸öеÄÏß³ÌÀ´Í³Ò»´¦ÀíÓû§Êý¾ÝµÄ¶Á¡¢Ð´²Ù×÷¡£
ÕâÖÖģʽµÄÓŵãÊǼòµ¥¡¢ÊµÓá¢Ò×¹ÜÀí£»È»¶øÈ±µãÒ²ÊÇÏÔ¶øÒ×¼ûµÄ£ºÓÉÓÚÊÇΪÿһ¸ö¿Í»§¶Ë·ÖÅäÒ»¸öÏß³ÌÀ´´¦ÀíÊäÈë¡¢Êä³öÊý¾Ý£¬ÆäÏß³ÌÓë¿Í»§»úµÄ±ÈÀý½üËÆÎª1£º1
£¬Ëæ×ÅÏß³ÌÊýÁ¿µÄ²»¶ÏÔö¼Ó£¬·þÎñÆ÷Æô¶¯ÁË´óÁ¿µÄ²¢·¢Ị̈߳¬»á´ó´ó¼Ó´óϵͳ¶ÔÏ̵߳ĹÜÀí¿ªÏú
£¬Õ⽫³ÉΪÍÌÍÂÁ¿Æ¿¾±µÄÖ÷ÒªÔÒò
£»Æä´ÎÓÉÓڵײãµÄI/O ²Ù×÷²ÉÓõÄͬ²½Ä£Ê½£¬I/O ²Ù×÷µÄ×èÈû¹ÜÀíÁ£¶ÈÊÇÒÔ·þÎñÓÚÇëÇóµÄÏß³ÌΪµ¥Î»µÄ,ÓпÉÄÜ´óÁ¿µÄÏ̻߳áÏÐÖÃ,´¦ÓÚäµÈ״̬£¬Ôì³ÉI/O×ÊÔ´ÀûÓÃÂʲ»¸ß£¬Ó°ÏìÕû¸öϵͳµÄÐÔÄÜ¡£
¶ÔÓÚ²¢·¢ÐÍ·þÎñÆ÷£¬ÏµÍ³ÓÃÔÚ×èÈûÐÍI/O µÈ´ýºÍÏ̼߳äÇл»µÄʱ¼äÔ¶Ô¶¶àÓÚ
CPU ÔÚÄÚ
´æÖд¦ÀíÊý¾ÝµÄʱ¼ä£¬Òò´Ë´«Í³µÄ×èÈûÐÍI/O ÒѾ³ÉÎªÖÆÔ¼ÏµÍ³ÐÔÄܵį¿¾±¡£Java1.4 °æ±¾
ºóÍÆ³öµÄNIO ¹¤¾ß°ü£¬ÌṩÁË·Ç×èÈûÐÍI/O µÄÒì²½ÊäÈëÊä³ö
»úÖÆ
£¬ÎªÌá¸ßϵͳµÄÐÔÄÜÌṩ
ÁË¿ÉʵÏֵĻù´¡»úÖÆ¡£
NIO °ü¼°¹¤×÷ÔÀí
Õë¶Ô´«Í³I/O ¹¤×÷ģʽµÄ²»×㣬NIO ¹¤¾ß°üÌá³öÁË»ùÓÚBuffer£¨»º³åÇø£©¡¢Channel£¨Í¨
µÀ£©¡¢Selector£¨Ñ¡ÔñÆ÷£©µÄÐÂģʽ£»Selector£¨Ñ¡ÔñÆ÷£©¡¢¿ÉÑ¡ÔñµÄChannel£¨Í¨µÀ£©ºÍ
SelectionKey£¨Ñ¡Ôñ¼ü£©ÅäºÏÆðÀ´Ê¹Ó㬿ÉÒÔʵÏÖ²¢·¢µÄ·Ç×èÈûÐÍI/O ÄÜÁ¦¡£
NIO ¹¤¾ß°üµÄ³ÉÔ±
Buffer£¨»º³åÆ÷£©
Ïà¹ØÎĵµ£º
JavaµÄÓŵãÓУº ¿çƽ̨ÐÔºÜÇ¿µÄ£¬Ò»´Î±àÒëµ½´¦ÔËÐУ¬Ò»±ß±àÒëÒ»±ßÖ´ÐУ¬ ²»Êܲ¡¶¾µÄ¸ÉÈÅ¡£µ«ÊÇÃÀÖв»×㣬ÔËÐÐËٶȱÈC£¬C++ µÈÓïÑÔÂý£¬ ·ÃÎÊÓ²¼þµ×²ã±È²»ÉÏC++£¬C£¬Ò»Ð©Ó¦ÓÃÐèÇóÈ´ÐèÒªÖ´Ðд¿ Java ³ÌÐòÎÞ·¨Íê³ÉµÄһЩÈÎÎñ¡£Îª´ËSUN¹«Ë¾ÎªÁËÍ»ÆÆJAVAµÄÆ¿¾±£¬ ¾ÍÒýÈëÁËJNI µÄ×÷Ó㬠JNI¾ÍÊÇÄܹ»¼æÈÝC£¬Ñﳤ±Ü¶Ì£¬ ¿ìËٵķÃÎÊÓ² ......
´ËÎÄÖеĴúÂëÖ÷ÒªÁгöÁ¬½ÓÊý¾Ý¿âµÄ¹Ø¼ü´úÂ룬ÆäËû·ÃÎÊÊý¾Ý¿â´úÂëÊ¡ÂÔ
¡¡¡¡1¡¢Oracle8/8i/9iÊý¾Ý¿â£¨thinģʽ£©
¡¡¡¡¡¡¡¡Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
¡¡¡¡¡¡¡¡String url="jdbc:oracle:thin:@localhost:1521:orcl";
¡¡¡¡¡¡¡¡//orclΪÊý¾Ý¿âµÄSID
¡¡¡¡¡¡¡¡String user="test";
¡ ......
¡¾ÕªÒª
JAVAÓïÑÔÊÇĿǰInternetÉÏ´óÐ͵ÄWEBÓ¦ÓóÌÐò¿ª·¢Ê±Ê¹ÓõÃ×îÈÈÃŵıà³ÌÓïÑÔ£¬±¾ÎÄÃèÊöÁËJAVAºÍJSP¼¼ÊõµÄÌØÕ÷ÒÔ¼°ÔÚ»¥ÁªÍøÉϵÄʹÓÃÇé¿ö£¬½éÉÜÕâÁ½ÖÖ¼¼ÊõµÄÖØÒª±à³Ì·½·¨ºÍÁ½ÕßÖ®¹ØµÄÁªÏµ£¬²¢Íê³ÉÒ»¸ö»ùÓÚÕâÖÖ¼¼ÊõµÄÍøÉÏÊéµêϵͳ¡£
¡¾¹Ø¼ü×ÖJAVA, JavaBeans, Servlet, JSP, ÍøÂç±à³Ì, µç×ÓÉÌÎñ, ÍøÉÏÊéµê
Abstract
A ......