锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲人成未满十八禁网站,亚洲AV无码一区二区乱子伦,亚洲av无码一区二区三区网站http://m.tkk7.com/b47248054/category/30297.html涓轟漢灝介噺淇濇寔浣庤皟銆傚皧閲嶅埆浜猴紝涓嶈闅忎究鍘繪墦鏂埆浜虹殑鍙戣█錛岃鐪熺殑鍚埆浜虹殑璦璇備笉瑕佽佹槸鎯崇潃鎶婅瘽棰樻姠榪囨潵鎶撳湪鑷繁鎵嬮噷銆備笉鑳芥斁寮鐨勪漢鏄病娉曡幏寰楃殑銆?/description>zh-cnThu, 13 Dec 2012 23:46:45 GMTThu, 13 Dec 2012 23:46:45 GMT60 Redis 鏁版嵁搴撶殑閿艱璁?/title><link>http://m.tkk7.com/b47248054/articles/392724.html</link><dc:creator>錛堝寳浜級(jí)鏈ㄦ湪</dc:creator><author>錛堝寳浜級(jí)鏈ㄦ湪</author><pubDate>Mon, 10 Dec 2012 06:03:00 GMT</pubDate><guid>http://m.tkk7.com/b47248054/articles/392724.html</guid><wfw:comment>http://m.tkk7.com/b47248054/comments/392724.html</wfw:comment><comments>http://m.tkk7.com/b47248054/articles/392724.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/b47248054/comments/commentRss/392724.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/b47248054/services/trackbacks/392724.html</trackback:ping><description><![CDATA[ <div id="6kgscqg" class="detail"> <p>涓板瘜鐨勬暟鎹粨鏋勪嬌寰梤edis鐨勮璁¢潪甯哥殑鏈夎叮銆備笉鍍忓叧緋誨瀷鏁版嵁搴撻偅鏍鳳紝DEV鍜孌BA闇瑕佹繁搴︽矡閫氾紝review姣忚sql璇彞錛屼篃涓嶅儚memcached閭f牱錛屼笉闇瑕丏BA鐨勫弬涓庛俽edis鐨凞BA闇瑕佺啛鎮(zhèn)夋暟鎹粨鏋勶紝騫惰兘浜?jiǎn)瑙d娇鐢ㄥ満鏅?/p> <p>涓嬮潰涓句竴浜涘父瑙侀傚悎kv鏁版嵁搴撶殑渚嬪瓙鏉ヨ皥璋堥敭鍊肩殑璁捐錛屽茍涓庡叧緋誨瀷鏁版嵁搴撳仛涓涓姣旓紝鍙戠幇鍏崇郴鍨嬬殑涓嶈凍涔嬪銆?/p> <h3>鐢ㄦ埛鐧誨綍緋葷粺</h3> <p>璁板綍鐢ㄦ埛鐧誨綍淇℃伅鐨勪竴涓郴緇燂紝 鎴戜滑綆鍖栦笟鍔″悗鍙暀涓嬩竴寮犺〃銆?/p> <h4>鍏崇郴鍨嬫暟鎹簱鐨勮璁?/h4> <pre>mysql> select * from login; +---------+----------------+-------------+---------------------+ | user_id | name聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) | login_times | last_login_time聽(tīng)聽(tīng)聽(tīng)聽(tīng) | +---------+----------------+-------------+---------------------+ |聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) 1 | ken thompson聽(tīng)聽(tīng) |聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) 5 | 2011-01-01 00:00:00 | |聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) 2 | dennis ritchie |聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) 1 | 2011-02-01 00:00:00 | |聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) 3 | Joe Armstrong聽(tīng) |聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) 2 | 2011-03-01 00:00:00 | +---------+----------------+-------------+---------------------+</pre> <p>user_id琛ㄧ殑涓婚敭錛宯ame琛ㄧず鐢ㄦ埛鍚嶏紝login_times琛ㄧず璇ョ敤鎴風(fēng)殑鐧誨綍嬈℃暟錛屾瘡嬈$敤鎴風(fēng)櫥褰曞悗錛宭ogin_times浼?xì)鑷锛岃宭ast_login_time鏇存柊涓哄綋鍓嶆椂闂淬?/p> <h4>REDIS鐨勮璁?/h4> <p>鍏崇郴鍨嬫暟鎹漿鍖栦負(fù)KV鏁版嵁搴擄紝鎴戠殑鏂規(guī)硶濡備笅錛?/p> <p>key 琛ㄥ悕錛氫富閿鹼細(xì)鍒楀悕</p> <p>value 鍒楀?/p> <p>涓鑸嬌鐢ㄥ啋鍙峰仛鍒嗗壊絎︼紝榪欐槸涓嶆垚鏂囩殑瑙勭煩銆傛瘮濡傚湪php-admin for redis緋葷粺閲岋紝灝辨槸榛樿浠ュ啋鍙峰垎鍓詫紝浜庢槸user:1 user:2絳塳ey浼?xì)鍒嗘垚涓緇勩備簬鏄互涓婄殑鍏崇郴鏁版嵁杞寲鎴恔v鏁版嵁鍚庤褰曞涓嬶細(xì)</p> <pre>Set login:1:login_times 5 Set login:2:login_times 1 Set login:3:login_times 2 Set login:1:last_login_time 2011-1-1 Set login:2:last_login_time 2011-2-1 Set login:3:last_login_time 2011-3-1 set login:1:name 鈥漦en thompson鈥? set login:2:name 鈥渄ennis ritchie鈥? set login:3:name 鈥滼oe Armstrong鈥?/pre> <p>榪欐牱鍦ㄥ凡鐭ヤ富閿殑鎯呭喌涓嬶紝閫氳繃get銆乻et灝卞彲浠ヨ幏寰楁垨鑰呬慨鏀圭敤鎴風(fēng)殑鐧誨綍嬈℃暟鍜屾渶鍚庣櫥褰曟椂闂村拰濮撳悕銆?/p> <p>涓鑸敤鎴鋒槸鏃犳硶鐭ラ亾鑷繁鐨刬d鐨勶紝鍙煡閬撹嚜宸辯殑鐢ㄦ埛鍚嶏紝鎵浠ヨ繕蹇呴』鏈変竴涓粠name鍒癷d鐨勬槧灝勫叧緋伙紝榪欓噷鐨勮璁′笌涓婇潰鐨勬湁鎵涓嶅悓銆?/p> <pre>set "login:ken thompson:id" 聽(tīng) 1 set "login:dennis ritchie:id"聽(tīng)聽(tīng)聽(tīng) 2 set "login:聽(tīng)Joe Armstrong:id"聽(tīng) 3</pre> <p>榪欐牱姣忔鐢ㄦ埛鐧誨綍鐨勬椂鍊欎笟鍔¢昏緫濡備笅錛坧ython鐗堬級(jí)錛宺鏄痳edis瀵硅薄錛宯ame鏄凡緇忚幏鐭ョ殑鐢ㄦ埛鍚嶃?/p> <div class="4icko0q" id="highlighter_350111" class="syntaxhighlighter "> <div id="ssacuu0" class="bar"> <div id="gky0i8k" class="toolbar"> <a href="#viewSource" title="view source" style="width: 16px; height: 16px;" class="item viewSource">view source</a> <div id="ymeuawg" class="item copyToClipboard"> <embed width="16" height="16" id="highlighter_350111_clipboard" type="application/x-shockwave-flash" title="copy to clipboard" allowscriptaccess="always" wmode="transparent" flashvars="highlighterId=highlighter_350111" menu="false" src="/js/syntax-highlighter-2.1.382/scripts/clipboard.swf"> </embed> </div> <a href="#printSource" title="print" style="width: 16px; height: 16px;" class="item printSource">print</a> <a href="#about" title="?" style="width: 16px; height: 16px;" class="item about">?</a> </div> </div> <div id="sqc2gg0" class="lines"> <div id="gk0eqck" class="line alt1"> <table> <tbody> <tr> <td class="number"> <code>1</code> </td> <td class="content"> <code class="comments">#鑾峰緱鐢ㄦ埛鐨刬d</code> </td> </tr> </tbody> </table> </div> <div id="uuqsskq" class="line alt2"> <table> <tbody> <tr> <td class="number"> <code>2</code> </td> <td class="content"> <code class="plain">uid </code> <code class="keyword">=</code> <code class="plain">r.get(</code> <code class="string">"login:%s:id"</code> <code class="keyword">%</code> <code class="plain">name)</code> </td> </tr> </tbody> </table> </div> <div id="akk20ci" class="line alt1"> <table> <tbody> <tr> <td class="number"> <code>3</code> </td> <td class="content"> <code class="comments">#鑷鐢ㄦ埛鐨勭櫥褰曟鏁?/code> </td> </tr> </tbody> </table> </div> <div id="60y0g0w" class="line alt2"> <table> <tbody> <tr> <td class="number"> <code>4</code> </td> <td class="content"> <code class="plain">ret </code> <code class="keyword">=</code> <code class="plain">r.incr(</code> <code class="string">"login:%s:login_times"</code> <code class="keyword">%</code> <code class="plain">uid)</code> </td> </tr> </tbody> </table> </div> <div id="u0gi0oi" class="line alt1"> <table> <tbody> <tr> <td class="number"> <code>5</code> </td> <td class="content"> <code class="comments">#鏇存柊璇ョ敤鎴風(fēng)殑鏈鍚庣櫥褰曟椂闂?/code> </td> </tr> </tbody> </table> </div> <div id="uyywyck" class="line alt2"> <table> <tbody> <tr> <td class="number"> <code>6</code> </td> <td class="content"> <code class="plain">ret </code> <code class="keyword">=</code> <code class="plain">r.</code> <code class="functions">set</code> <code class="plain">(</code> <code class="string">"login:%s:last_login_time"</code> <code class="keyword">%</code> <code class="plain">uid, datetime.datetime.now())</code> </td> </tr> </tbody> </table> </div> </div> </div> <p>濡傛灉闇姹備粎浠呮槸宸茬煡id錛屾洿鏂版垨鑰呰幏鍙栨煇涓敤鎴風(fēng)殑鏈鍚庣櫥褰曟椂闂達(dá)紝鐧誨綍嬈℃暟錛屽叧緋誨瀷鍜宬v鏁版嵁搴撴棤鍟ュ尯鍒備竴涓氳繃btree pk錛屼竴涓氳繃hash錛屾晥鏋滈兘寰堝ソ銆?/p> <p>鍋囪鏈夊涓嬮渶姹傦紝鏌ユ壘鏈榪戠櫥褰曠殑N涓敤鎴楓傚紑鍙戜漢鍛樼湅鐪嬶紝榪樻槸姣旇緝綆鍗曠殑錛屼竴涓猻ql鎼炲畾銆?/p> <div class="gseosqy" id="highlighter_599481" class="syntaxhighlighter "> <div id="skasm00" class="bar"> <div id="gwkiuco" class="toolbar"> <a href="#viewSource" title="view source" style="width: 16px; height: 16px;" class="item viewSource">view source</a> <div id="akwkuyg" class="item copyToClipboard"> <embed width="16" height="16" id="highlighter_599481_clipboard" type="application/x-shockwave-flash" title="copy to clipboard" allowscriptaccess="always" wmode="transparent" flashvars="highlighterId=highlighter_599481" menu="false" src="/js/syntax-highlighter-2.1.382/scripts/clipboard.swf"> </embed> </div> <a href="#printSource" title="print" style="width: 16px; height: 16px;" class="item printSource">print</a> <a href="#about" title="?" style="width: 16px; height: 16px;" class="item about">?</a> </div> </div> <div id="ioaaygm" class="lines"> <div id="auq2ceu" class="line alt1"> <table> <tbody> <tr> <td class="number"> <code>1</code> </td> <td class="content"> <code class="keyword">select</code> <code class="plain">* </code> <code class="keyword">from</code> <code class="plain">login </code> <code class="keyword">order</code> <code class="keyword">by</code> <code class="plain">last_login_time </code> <code class="keyword">desc</code> <code class="plain">limit N</code> </td> </tr> </tbody> </table> </div> </div> </div> <p>DBA浜?jiǎn)瑙i渶姹傚悗錛岃冭檻鍒頒互鍚庤〃濡傛灉姣旇緝澶э紝鎵浠ュ湪last_login_time涓婂緩涓儲(chǔ)寮曘傛墽琛岃鍒掍粠绱㈠紩leafblock 鐨勬渶鍙寵竟寮濮嬭闂甆鏉¤褰曪紝鍐嶅洖琛∟嬈★紝鏁堟灉寰堝ソ銆?/p> <p>榪囦簡(jiǎn)涓ゅぉ錛屽張鏉ヤ竴涓渶姹傦紝闇瑕佺煡閬撶櫥褰曟鏁版渶澶氱殑浜烘槸璋併傚悓鏍風(fēng)殑鍏崇郴鍨嬪浣曞鐞嗭紵DEV璇寸畝鍗?/p> <div class="yssumw2" id="highlighter_541233" class="syntaxhighlighter "> <div id="um2i80g" class="bar"> <div id="eu2uusa" class="toolbar"> <a href="#viewSource" title="view source" style="width: 16px; height: 16px;" class="item viewSource">view source</a> <div id="4ey2ick" class="item copyToClipboard"> <embed width="16" height="16" id="highlighter_541233_clipboard" type="application/x-shockwave-flash" title="copy to clipboard" allowscriptaccess="always" wmode="transparent" flashvars="highlighterId=highlighter_541233" menu="false" src="/js/syntax-highlighter-2.1.382/scripts/clipboard.swf"> </embed> </div> <a href="#printSource" title="print" style="width: 16px; height: 16px;" class="item printSource">print</a> <a href="#about" title="?" style="width: 16px; height: 16px;" class="item about">?</a> </div> </div> <div id="i000cmi" class="lines"> <div id="s0keesc" class="line alt1"> <table> <tbody> <tr> <td class="number"> <code>1</code> </td> <td class="content"> <code class="keyword">select</code> <code class="plain">* </code> <code class="keyword">from</code> <code class="plain">login </code> <code class="keyword">order</code> <code class="keyword">by</code> <code class="plain">login_times </code> <code class="keyword">desc</code> <code class="plain">limit N</code> </td> </tr> </tbody> </table> </div> </div> </div> <p>DBA涓鐪嬶紝鍙堣鍦╨ogin_time涓婂緩绔嬩竴涓儲(chǔ)寮曘傛湁娌℃湁瑙夊緱鏈夌偣闂鍛紝琛ㄤ笂姣忎釜瀛楁涓婇兘鏈夌礌寮曘?/p> <p>鍏崇郴鍨嬫暟鎹簱鐨勬暟鎹瓨鍌ㄧ殑鐨勪笉鐏墊椿鏄棶棰樼殑婧愬ご錛屾暟鎹粎鏈変竴縐嶅偍瀛樻柟娉曪紝閭e氨鏄寜琛屾帓鍒楃殑鍫嗚〃銆傜粺涓鐨勬暟鎹粨鏋勬剰鍛崇潃浣犲繀欏諱嬌鐢ㄧ儲(chǔ)寮曟潵鏀瑰彉sql鐨勮闂礬寰勬潵蹇熻闂煇涓垪鐨勶紝鑰岃闂礬寰勭殑澧炲姞鍙堟剰鍛崇潃浣犲繀欏諱嬌鐢ㄧ粺璁′俊鎭潵杈呭姪錛屼簬鏄竴澶у爢鐨勯棶棰樺氨鍑虹幇浜?jiǎn)銆?/p> <p>娌℃湁绱㈠紩錛屾病鏈夌粺璁¤鍒掞紝娌℃湁鎵ц璁″垝錛岃繖灝辨槸kv鏁版嵁搴撱?/p> <p>redis閲屽浣曟弧瓚充互涓婄殑闇姹傚憿錛?瀵逛簬姹傛渶鏂扮殑N鏉℃暟鎹殑闇姹傦紝閾捐〃鐨勫悗榪涘悗鍑虹殑鐗圭偣闈炲父閫傚悎銆傛垜浠湪涓婇潰鐨勭櫥褰曚唬鐮佷箣鍚庢坊鍔犱竴孌典唬鐮侊紝緇存姢涓涓櫥褰曠殑閾捐〃錛屾帶鍒朵粬鐨勯暱搴︼紝浣垮緱閲岄潰姘歌繙淇濆瓨鐨勬槸鏈榪戠殑N涓櫥褰曠敤鎴楓?/p> <div class="u0acgwq" id="highlighter_573324" class="syntaxhighlighter "> <div id="ggssgoy" class="bar"> <div id="cw0cuui" class="toolbar"> <a href="#viewSource" title="view source" style="width: 16px; height: 16px;" class="item viewSource">view source</a> <div id="6w0yqcu" class="item copyToClipboard"> <embed width="16" height="16" id="highlighter_573324_clipboard" type="application/x-shockwave-flash" title="copy to clipboard" allowscriptaccess="always" wmode="transparent" flashvars="highlighterId=highlighter_573324" menu="false" src="/js/syntax-highlighter-2.1.382/scripts/clipboard.swf"> </embed> </div> <a href="#printSource" title="print" style="width: 16px; height: 16px;" class="item printSource">print</a> <a href="#about" title="?" style="width: 16px; height: 16px;" class="item about">?</a> </div> </div> <div id="ski0sae" class="lines"> <div id="kaocok2" class="line alt1"> <table> <tbody> <tr> <td class="number"> <code>1</code> </td> <td class="content"> <code class="comments">#鎶婂綋鍓嶇櫥褰曚漢娣誨姞鍒伴摼琛ㄩ噷</code> </td> </tr> </tbody> </table> </div> <div id="wo2gm0i" class="line alt2"> <table> <tbody> <tr> <td class="number"> <code>2</code> </td> <td class="content"> <code class="plain">ret </code> <code class="keyword">=</code> <code class="plain">r.lpush(</code> <code class="string">"login:last_login_times"</code> <code class="plain">, uid)</code> </td> </tr> </tbody> </table> </div> <div id="ums000c" class="line alt1"> <table> <tbody> <tr> <td class="number"> <code>3</code> </td> <td class="content"> <code class="comments">#淇濇寔閾捐〃鍙湁N浣?/code> </td> </tr> </tbody> </table> </div> <div id="gywaoio" class="line alt2"> <table> <tbody> <tr> <td class="number"> <code>4</code> </td> <td class="content"> <code class="plain">ret </code> <code class="keyword">=</code> <code class="plain">redis.ltrim(</code> <code class="string">"login:last_login_times"</code> <code class="plain">, </code> <code class="value">0</code> <code class="plain">, N</code> <code class="keyword">-</code> <code class="value">1</code> <code class="plain">)</code> </td> </tr> </tbody> </table> </div> </div> </div> <p>榪欐牱闇瑕佽幏寰楁渶鏂扮櫥褰曚漢鐨刬d錛屽涓嬬殑浠g爜鍗沖彲</p> <div class="ukkuyqe" id="highlighter_620736" class="syntaxhighlighter "> <div id="yk0egyi" class="bar"> <div id="ks0eiqk" class="toolbar"> <a href="#viewSource" title="view source" style="width: 16px; height: 16px;" class="item viewSource">view source</a> <div id="g0ksg00" class="item copyToClipboard"> <embed width="16" height="16" id="highlighter_620736_clipboard" type="application/x-shockwave-flash" title="copy to clipboard" allowscriptaccess="always" wmode="transparent" flashvars="highlighterId=highlighter_620736" menu="false" src="/js/syntax-highlighter-2.1.382/scripts/clipboard.swf"> </embed> </div> <a href="#printSource" title="print" style="width: 16px; height: 16px;" class="item printSource">print</a> <a href="#about" title="?" style="width: 16px; height: 16px;" class="item about">?</a> </div> </div> <div id="aq2eqkc" class="lines"> <div id="mmqayam" class="line alt1"> <table> <tbody> <tr> <td class="number"> <code>1</code> </td> <td class="content"> <code class="plain">last_login_list </code> <code class="keyword">=</code> <code class="plain">r.lrange(</code> <code class="string">"login:last_login_times"</code> <code class="plain">, </code> <code class="value">0</code> <code class="plain">, N</code> <code class="keyword">-</code> <code class="value">1</code> <code class="plain">)</code> </td> </tr> </tbody> </table> </div> </div> </div> <p>鍙﹀錛屾眰鐧誨綍嬈℃暟鏈澶氱殑浜猴紝瀵逛簬鎺掑簭錛岀Н鍒嗘榪欑被闇姹傦紝sorted set闈炲父鐨勯傚悎錛屾垜浠妸鐢ㄦ埛鍜岀櫥褰曟鏁扮粺涓瀛樺偍鍦ㄤ竴涓猻orted set閲屻?/p> <pre>zadd login:login_times 5 1 zadd login:login_times 1 2 zadd login:login_times 2 3</pre> <p>榪欐牱鍋囧鏌愪釜鐢ㄦ埛鐧誨綍錛岄澶栫淮鎶や竴涓猻orted set錛屼唬鐮佸姝?/p> <div class="qme2sym" id="highlighter_238323" class="syntaxhighlighter "> <div id="saqgscu" class="bar"> <div id="2w000eu" class="toolbar"> <a href="#viewSource" title="view source" style="width: 16px; height: 16px;" class="item viewSource">view source</a> <div id="8mm0m0s" class="item copyToClipboard"> <embed width="16" height="16" id="highlighter_238323_clipboard" type="application/x-shockwave-flash" title="copy to clipboard" allowscriptaccess="always" wmode="transparent" flashvars="highlighterId=highlighter_238323" menu="false" src="/js/syntax-highlighter-2.1.382/scripts/clipboard.swf"> </embed> </div> <a href="#printSource" title="print" style="width: 16px; height: 16px;" class="item printSource">print</a> <a href="#about" title="?" style="width: 16px; height: 16px;" class="item about">?</a> </div> </div> <div id="kuigucy" class="lines"> <div id="6auwk0i" class="line alt1"> <table> <tbody> <tr> <td class="number"> <code>1</code> </td> <td class="content"> <code class="comments">#瀵硅鐢ㄦ埛鐨勭櫥褰曟鏁拌嚜澧?</code> </td> </tr> </tbody> </table> </div> <div id="o2cos0m" class="line alt2"> <table> <tbody> <tr> <td class="number"> <code>2</code> </td> <td class="content"> <code class="plain">ret </code> <code class="keyword">=</code> <code class="plain">r.zincrby(</code> <code class="string">"login:login_times"</code> <code class="plain">, </code> <code class="value">1</code> <code class="plain">, uid)</code> </td> </tr> </tbody> </table> </div> </div> </div> <p>閭d箞濡備綍鑾峰緱鐧誨綍嬈℃暟鏈澶氱殑鐢ㄦ埛鍛紝閫嗗簭鎺掑垪鍙栫殑鎺掑悕絎琋鐨勭敤鎴峰嵆鍙?/p> <div class="gy2000i" id="highlighter_286372" class="syntaxhighlighter "> <div id="iwkaom0" class="bar"> <div id="e0wy0ge" class="toolbar"> <a href="#viewSource" title="view source" style="width: 16px; height: 16px;" class="item viewSource">view source</a> <div id="y0uii00" class="item copyToClipboard"> <embed width="16" height="16" id="highlighter_286372_clipboard" type="application/x-shockwave-flash" title="copy to clipboard" allowscriptaccess="always" wmode="transparent" flashvars="highlighterId=highlighter_286372" menu="false" src="/js/syntax-highlighter-2.1.382/scripts/clipboard.swf"> </embed> </div> <a href="#printSource" title="print" style="width: 16px; height: 16px;" class="item printSource">print</a> <a href="#about" title="?" style="width: 16px; height: 16px;" class="item about">?</a> </div> </div> <div id="eckogou" class="lines"> <div id="ccyqgom" class="line alt1"> <table> <tbody> <tr> <td class="number"> <code>1</code> </td> <td class="content"> <code class="plain">ret </code> <code class="keyword">=</code> <code class="plain">r.zrevrange(</code> <code class="string">"login:login_times"</code> <code class="plain">, </code> <code class="value">0</code> <code class="plain">, N</code> <code class="keyword">-</code> <code class="value">1</code> <code class="plain">)</code> </td> </tr> </tbody> </table> </div> </div> </div> <p>鍙互鐪嬪嚭錛孌EV闇瑕佹坊鍔?琛屼唬鐮侊紝鑰孌BA涓嶉渶瑕佽冭檻绱㈠紩浠涔堢殑銆?/p> <h3>TAG緋葷粺</h3> <p>tag鍦ㄤ簰鑱旂綉搴旂敤閲屽挨鍏跺瑙侊紝濡傛灉浠ヤ紶緇熺殑鍏崇郴鍨嬫暟鎹簱鏉ヨ璁℃湁鐐逛笉浼︿笉綾匯傛垜浠互鏌ユ壘涔︾殑渚嬪瓙鏉ョ湅鐪媟edis鍦ㄨ繖鏂歸潰鐨勪紭鍔褲?/p> <h4>鍏崇郴鍨嬫暟鎹簱鐨勮璁?/h4> <p>涓ゅ紶琛紝涓寮燽ook鐨勬槑緇嗭紝涓寮爐ag琛紝琛ㄧず姣忔湰鐨則ag錛屼竴鏈功瀛樺湪澶氫釜tag銆?/p> <pre>mysql> select * from book; +------+-------------------------------+----------------+ | id | name | author | +------+-------------------------------+----------------+ | 1 | The Ruby Programming Language | Mark Pilgrim | | 1 | Ruby on rail | David Flanagan | | 1 | Programming Erlang | Joe Armstrong | +------+-------------------------------+----------------+ mysql> select * from tag; +---------+---------+ | tagname | book_id | +---------+---------+ | ruby | 1 | | ruby | 2 | | web | 2 | | erlang | 3 | +---------+---------+ 鍋囧鏈夊姝ら渶姹傦紝鏌ユ壘鍗蟲(chóng)槸ruby鍙堟槸web鏂歸潰鐨勪功綾嶏紝濡傛灉浠ュ叧緋誨瀷鏁版嵁搴撲細(xì)鎬庝箞澶勭悊錛?/pre> <div class="s200goo" id="highlighter_85473" class="syntaxhighlighter "> <div id="koao0sm" class="bar"> <div id="kkiuuoa" class="toolbar"> <a href="#viewSource" title="view source" style="width: 16px; height: 16px;" class="item viewSource">view source</a> <div id="2ikak0e" class="item copyToClipboard"> <embed width="16" height="16" id="highlighter_85473_clipboard" type="application/x-shockwave-flash" title="copy to clipboard" allowscriptaccess="always" wmode="transparent" flashvars="highlighterId=highlighter_85473" menu="false" src="/js/syntax-highlighter-2.1.382/scripts/clipboard.swf"> </embed> </div> <a href="#printSource" title="print" style="width: 16px; height: 16px;" class="item printSource">print</a> <a href="#about" title="?" style="width: 16px; height: 16px;" class="item about">?</a> </div> </div> <div id="wgyos2m" class="lines"> <div id="oyak00m" class="line alt1"> <table> <tbody> <tr> <td class="number"> <code>1</code> </td> <td class="content"> <code class="keyword">select</code> <code class="plain">b.</code> <code class="keyword">name</code> <code class="plain">, b.author聽(tīng) </code> <code class="keyword">from</code> <code class="plain">tag t1, tag t2, book b</code> </td> </tr> </tbody> </table> </div> <div id="omyi2a0" class="line alt2"> <table> <tbody> <tr> <td class="number"> <code>2</code> </td> <td class="content"> <code class="keyword">where</code> <code class="plain">t1.tagname = </code> <code class="string">'web'</code> <code class="color1">and</code> <code class="plain">t2.tagname = </code> <code class="string">'ruby'</code> <code class="color1">and</code> <code class="plain">t1.book_id = t2.book_id </code> <code class="color1">and</code> <code class="plain">b.id = t1.book_id</code> </td> </tr> </tbody> </table> </div> </div> </div> <p>tag琛ㄨ嚜鍏寵仈2嬈″啀涓巄ook鍏寵仈錛岃繖涓猻ql榪樻槸姣旇緝澶嶆潅鐨勶紝濡傛灉瑕佹眰鍗硆uby錛屼絾涓嶆槸web鏂歸潰鐨勪功綾嶅憿錛?/p> <p>鍏崇郴鍨嬫暟鎹叾瀹炲茍涓嶅お閫傚悎榪欎簺闆嗗悎鎿嶄綔銆?/p> <h4>REDIS鐨勮璁?/h4> <p>棣栧厛book鐨勬暟鎹偗瀹氳瀛樺偍鐨勶紝鍜屼笂闈竴鏍楓?/p> <pre>set book:1:name聽(tīng)聽(tīng) 聽(tīng)鈥漈he Ruby Programming Language鈥? Set book:2:name聽(tīng)聽(tīng) 聽(tīng) 鈥漅uby on rail鈥? Set book:3:name聽(tīng)聽(tīng) 聽(tīng) 鈥漃rogramming Erlang鈥? set book:1:author聽(tīng)聽(tīng) 聽(tīng)鈥滿ark Pilgrim鈥? Set book:2:author聽(tīng)聽(tīng) 聽(tīng) 鈥滵avid Flanagan鈥? Set book:3:author聽(tīng)聽(tīng) 聽(tīng) 鈥滼oe Armstrong鈥?/pre> <p>tag琛ㄦ垜浠嬌鐢ㄩ泦鍚堟潵瀛樺偍鏁版嵁錛屽洜涓洪泦鍚堟搮闀挎眰浜ら泦銆佸茍闆?/p> <pre>sadd tag:ruby 1 sadd tag:ruby 2 sadd tag:web 2 sadd tag:erlang 3</pre> <p>閭d箞錛屽嵆灞炰簬ruby鍙堝睘浜巜eb鐨勪功錛?/p> <pre>inter_list = redis.sinter("tag.web", "tag:ruby")</pre> <p>鍗沖睘浜巖uby錛屼絾涓嶅睘浜巜eb鐨勪功錛?/p> <pre>inter_list = redis.sdiff("tag.ruby", "tag:web")</pre> <p>灞炰簬ruby鍜屽睘浜巜eb鐨勪功鐨勫悎闆嗭紵</p> <pre>inter_list = redis.sunion("tag.ruby", "tag:web")</pre> <p>綆鍗曞埌涓嶈闃褲?/p> <p>浠庝互涓?涓緥瀛愬彲浠ョ湅鍑哄湪鏌愪簺鍦烘櫙閲岋紝鍏崇郴鍨嬫暟鎹簱鏄笉澶傚悎鐨勶紝浣犲彲鑳借兘澶熻璁″嚭婊¤凍闇姹傜殑緋葷粺錛屼絾鎬繪槸鎰熻鐨勬殑錛屾湁縐嶇敓鎼‖濂楃殑鎰熻銆?/p> <p>灝ゅ叾鐧誨綍緋葷粺榪欎釜渚嬪瓙錛岄綣佺殑涓轟笟鍔″緩绔嬬儲(chǔ)寮曘傛斁鍦ㄤ竴涓鏉傜殑緋葷粺閲岋紝ddl錛堝垱寤虹儲(chǔ)寮曪級(jí)鏈夊彲鑳芥敼鍙樻墽琛岃鍒掋傚鑷村叾瀹冪殑sql閲囩敤涓嶅悓鐨勬墽琛岃 鍒掞紝涓氬姟澶嶆潅鐨勮佺郴緇燂紝榪欎釜闂鏄緢闅鵑浼扮殑錛宻ql鍗冨鐧炬傝姹侱BA瀵硅繖涓郴緇熼噷鎵鏈夌殑sql閮戒簡(jiǎn)瑙o紝榪欑偣澶毦浜?jiǎn)銆傝繖涓棶棰樺湪oracle閲屽挨鍏朵弗 閲嶏紝姣忎釜DBA浼拌閮界鍒拌繃銆傚浜嶮ySQL榪欑被緋葷粺錛宒dl鍙堜笉鏂逛究錛堣櫧鐒剁幇鍦ㄦ湁online ddl鐨勬柟娉曪級(jí)銆傜鍒板ぇ琛紝DBA鍑屾櫒鐖搗鏉ュ湪涓氬姟浣庡嘲鏈熸搷浣滐紝榪欎簨鎴戞病灝戝共榪囥傝岃繖縐嶉渶姹傛斁鍒皉edis閲屽氨寰堝ソ澶勭悊錛孌BA浠呬粎瀵瑰閲忚繘琛岄浼板嵆鍙?/p> <p>鏈潵鐨凮LTP緋葷粺搴旇鏄痥v鍜屽叧緋誨瀷鐨勭揣瀵嗙粨鍚堛?/p> <p>鏉ユ簮錛?a target="_blank" rel="nofollow">www.hoterran.info</a></p> <div id="uosusau" class="clear"> </div> </div> <img src ="http://m.tkk7.com/b47248054/aggbug/392724.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/b47248054/" target="_blank">錛堝寳浜級(jí)鏈ㄦ湪</a> 2012-12-10 14:03 <a href="http://m.tkk7.com/b47248054/articles/392724.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>Redis紺轟緥閰嶇疆鏂囦歡 2.4http://m.tkk7.com/b47248054/articles/392723.html錛堝寳浜級(jí)鏈ㄦ湪錛堝寳浜級(jí)鏈ㄦ湪Mon, 10 Dec 2012 05:57:00 GMThttp://m.tkk7.com/b47248054/articles/392723.htmlhttp://m.tkk7.com/b47248054/comments/392723.htmlhttp://m.tkk7.com/b47248054/articles/392723.html#Feedback0http://m.tkk7.com/b47248054/comments/commentRss/392723.htmlhttp://m.tkk7.com/b47248054/services/trackbacks/392723.html # 聽(tīng)Redis紺轟緥閰嶇疆鏂囦歡

# 聽(tīng)娉ㄦ剰鍗曚綅闂錛氬綋闇瑕佽緗唴瀛樺ぇ灝忕殑鏃跺欙紝鍙互浣跨敤綾諱技1k銆?GB銆?M榪欐牱鐨勫父瑙佹牸寮忥細(xì)
#
#
聽(tīng)1k聽(tīng)=>聽(tīng)1000聽(tīng)bytes
#
聽(tīng)1kb聽(tīng)=>聽(tīng)1024聽(tīng)bytes
#
聽(tīng)1m聽(tīng)=>聽(tīng)1000000聽(tīng)bytes
#
聽(tīng)1mb聽(tīng)=>聽(tīng)1024*1024聽(tīng)bytes
#
聽(tīng)1g聽(tīng)=>聽(tīng)1000000000聽(tīng)bytes
#
聽(tīng)1gb聽(tīng)=>聽(tīng)1024*1024*1024聽(tīng)bytes
#
#
聽(tīng)鍗曚綅鏄ぇ灝忓啓涓嶆晱鎰熺殑錛屾墍浠?GB聽(tīng)1Gb聽(tīng)1gB鐨勫啓娉曢兘鏄畬鍏ㄤ竴鏍風(fēng)殑銆?/span>

# 聽(tīng)Redis榛樿鏄笉浣滀負(fù)瀹堟姢榪涚▼鏉ヨ繍琛岀殑銆備綘鍙互鎶婅繖涓緗負(fù)"yes"璁╁畠浣滀負(fù)瀹堟姢榪涚▼鏉ヨ繍琛屻?/span>
#
聽(tīng)娉ㄦ剰錛屽綋浣滀負(fù)瀹堟姢榪涚▼鐨勬椂鍊欙紝Redis浼?xì)鎶姌q涚▼ID鍐欏埌聽(tīng)/var/run/redis.pid
daemonize聽(tīng)no

# 聽(tīng)褰撲互瀹堟姢榪涚▼鏂瑰紡榪愯鐨勬椂鍊欙紝Redis浼?xì)鎶姌q涚▼ID榛樿鍐欏埌聽(tīng)/var/run/redis.pid銆備綘鍙互鍦ㄨ繖閲屼慨鏀硅礬寰勩?/span>
pidfile聽(tīng) / var / run / redis.pid

# 聽(tīng)鎺ュ彈榪炴帴鐨勭壒瀹氱鍙o紝榛樿鏄?379銆?/span>
#
聽(tīng)濡傛灉绔彛璁劇疆涓?錛孯edis灝變笉浼?xì)鐩戝惉TCP濂楁帴瀛椼?/span>
port聽(tīng) 6379

# 聽(tīng)濡傛灉浣犳兂鐨勮瘽錛屼綘鍙互緇戝畾鍗曚竴鎺ュ彛錛涘鏋滆繖閲屾病鍗曠嫭璁劇疆錛岄偅涔堟墍鏈夋帴鍙g殑榪炴帴閮戒細(xì)琚洃鍚?/span>
#
#
聽(tīng)bind聽(tīng)127.0.0.1

# 聽(tīng)鎸囧畾鐢ㄦ潵鐩戝惉榪炴帴鐨剈nxi濂楁帴瀛楃殑璺緞銆傝繖涓病鏈夐粯璁ゅ鹼紝鎵浠ュ鏋滀綘涓嶆寚瀹氱殑璇濓紝Redis灝變笉浼?xì)閫氳繃unix濂楁帴瀛楁潵鐩戝惉銆?/span>
#
#
聽(tīng)unixsocket聽(tīng)/tmp/redis.sock
#
聽(tīng)unixsocketperm聽(tīng)755

# 涓涓鎴風(fēng)絀洪棽澶氬皯縐掑悗鍏抽棴榪炴帴銆?0浠h〃紱佺敤錛屾案涓嶅叧闂?
timeout聽(tīng)0

# 聽(tīng)璁劇疆鏈嶅姟鍣ㄨ皟璇曠瓑綰с?/span>
#
聽(tīng)鍙兘鍊鹼細(xì)
#
聽(tīng)debug聽(tīng)錛堝緢澶氫俊鎭紝瀵瑰紑鍙?嫻嬭瘯鏈夌敤錛?/span>
#
聽(tīng)verbose聽(tīng)錛堝緢澶氱簿綆鐨勬湁鐢ㄤ俊鎭紝浣嗘槸涓嶅儚debug絳夌駭閭d箞澶氾級(jí)
#
聽(tīng)notice聽(tīng)錛堥傞噺鐨勪俊鎭紝鍩烘湰涓婃槸浣犵敓浜х幆澧冧腑闇瑕佺殑紼嬪害錛?/span>
#
聽(tīng)warning聽(tīng)錛堝彧鏈夊緢閲嶈/涓ラ噸鐨勪俊鎭細(xì)璁板綍涓嬫潵錛?/span>
loglevel聽(tīng)verbose

# 聽(tīng)鎸囨槑鏃ュ織鏂囦歡鍚嶃備篃鍙互浣跨敤"stdout"鏉ュ己鍒惰Redis鎶婃棩蹇椾俊鎭啓鍒版爣鍑嗚緭鍑轟笂銆?/span>
#
聽(tīng)娉ㄦ剰錛氬鏋淩edis浠ュ畧鎶よ繘紼嬫柟寮忚繍琛岋紝鑰屼綘璁劇疆鏃ュ織鏄劇ず鍒版爣鍑嗚緭鍑虹殑璇濓紝閭d箞鏃ュ織浼?xì)鍙戦佸埌聽(tīng)/dev/null
logfile聽(tīng)stdout

# 聽(tīng)瑕佷嬌鐢ㄧ郴緇熸棩蹇楄褰曞櫒寰堢畝鍗曪紝鍙璁劇疆聽(tīng)"syslog-enabled"聽(tīng)涓郝?yes"聽(tīng)灝卞彲浠ヤ簡(jiǎn)銆?/span>
#
聽(tīng)鐒跺悗鏍規(guī)嵁闇瑕佽緗叾浠栦竴浜泂yslog鍙傛暟灝卞彲浠ヤ簡(jiǎn)銆?/span>
#
聽(tīng)syslog-enabled聽(tīng)no

# 聽(tīng)鎸囨槑syslog韜喚
#
聽(tīng)syslog-ident聽(tīng)redis

# 聽(tīng)鎸囨槑syslog鐨勮澶囥傚繀欏繪槸涓涓敤鎴鋒垨鑰呮槸聽(tīng)LOCAL0聽(tīng)~聽(tīng)LOCAL7聽(tīng)涔嬩竴銆?/span>
#
聽(tīng)syslog-facility聽(tīng)local0

# 聽(tīng)璁劇疆鏁版嵁搴撲釜鏁般傞粯璁ゆ暟鎹簱鏄?tīng)DB聽(tīng)0錛屼綘鍙互閫氳繃SELECT聽(tīng)<dbid>聽(tīng)WHERE聽(tīng)dbid錛?锝?databases'聽(tīng)-聽(tīng)1錛夋潵涓烘瘡涓繛鎺ヤ嬌鐢ㄤ笉鍚岀殑鏁版嵁搴撱?/span>
databases聽(tīng) 16

# ###############################聽(tīng)蹇収聽(tīng)#################################

#
#
聽(tīng)鎶婃暟鎹簱瀛樺埌紓佺洏?shù)?
#
#
聽(tīng)聽(tīng)聽(tīng)save聽(tīng)<seconds>聽(tīng)<changes>
#
聽(tīng)聽(tīng)聽(tīng)
#
聽(tīng)聽(tīng)聽(tīng)浼?xì)鍦ㄦ寚瀹毧U掓暟鍜屾暟鎹彉鍖栨鏁頒箣鍚庢妸鏁版嵁搴撳啓鍒扮鐩樹(shù)笂銆?/span>
#
#
聽(tīng)聽(tīng)聽(tīng)涓嬮潰鐨勪緥瀛愬皢浼?xì)杩涜鎶婃暟鎹啓鍏ゼ倎鐩樼殑鎿嶄?
#
聽(tīng)聽(tīng)聽(tīng)900縐掞紙15鍒嗛挓錛変箣鍚庯紝涓旇嚦灝?嬈″彉鏇?/span>
#
聽(tīng)聽(tīng)聽(tīng)300縐掞紙5鍒嗛挓錛変箣鍚庯紝涓旇嚦灝?0嬈″彉鏇?/span>
#
聽(tīng)聽(tīng)聽(tīng)60縐掍箣鍚庯紝涓旇嚦灝?0000嬈″彉鏇?/span>
#
#
聽(tīng)聽(tīng)聽(tīng)娉ㄦ剰錛氫綘瑕佹兂涓嶅啓紓佺洏鐨勮瘽灝辨妸鎵鏈壜?save"聽(tīng)璁劇疆娉ㄩ噴鎺夊氨琛屼簡(jiǎn)銆?/span>

save聽(tīng)
900 聽(tīng) 1
save聽(tīng)
300 聽(tīng) 10
save聽(tīng)
60 聽(tīng) 10000

# 聽(tīng)褰撳鍑哄埌聽(tīng).rdb聽(tīng)鏁版嵁搴撴椂鏄惁鐢↙ZF鍘嬬緝瀛楃涓插璞°?/span>
#
聽(tīng)榛樿璁劇疆涓郝?yes"錛屾墍浠ュ嚑涔庢繪槸鐢熸晥鐨勩?/span>
#
聽(tīng)濡傛灉浣犳兂鑺傜渷CPU鐨勮瘽浣犲彲浠ユ妸榪欎釜璁劇疆涓郝?no"錛屼絾鏄鏋滀綘鏈夊彲鍘嬬緝鐨刱ey鐨勮瘽錛岄偅鏁版嵁鏂囦歡灝變細(xì)鏇村ぇ浜?jiǎn)銆?/span>
rdbcompression聽(tīng)yes

# 聽(tīng)鏁版嵁搴撶殑鏂囦歡鍚?/span>
dbfilename聽(tīng)dump.rdb

# 聽(tīng)宸ヤ綔鐩綍
#
#
聽(tīng)鏁版嵁搴撲細(xì)鍐欏埌榪欎釜鐩綍涓嬶紝鏂囦歡鍚嶅氨鏄笂闈㈢殑聽(tīng)"dbfilename"聽(tīng)鐨勫箋?/span>
#
聽(tīng)
#
聽(tīng)绱姞鏂囦歡涔熸斁榪欓噷銆?/span>
#
聽(tīng)
#
聽(tīng)娉ㄦ剰浣犺繖閲屾寚瀹氱殑蹇呴』鏄洰褰曪紝涓嶆槸鏂囦歡鍚嶃?/span>
dir聽(tīng). /

# ################################聽(tīng)鍚屾聽(tīng)#################################

#
#
聽(tīng)涓諱粠鍚屾銆傞氳繃聽(tīng)slaveof聽(tīng)閰嶇疆鏉ュ疄鐜癛edis瀹炰緥鐨勫浠姐?/span>
#
聽(tīng)娉ㄦ剰錛岃繖閲屾槸鏈湴浠庤繙绔鍒舵暟鎹備篃灝辨槸璇達(dá)紝鏈湴鍙互鏈変笉鍚岀殑鏁版嵁搴撴枃浠躲佺粦瀹氫笉鍚岀殑IP銆佺洃鍚笉鍚岀殑绔彛銆?/span>
#
#
聽(tīng)slaveof聽(tīng)<masterip>聽(tīng)<masterport>

# 聽(tīng)濡傛灉master璁劇疆浜?jiǎn)瀵嗙爜锛堥氳繃涓嬮潰鐨劼?requirepass"聽(tīng)閫夐」鏉ラ厤緗級(jí)錛岄偅涔坰lave鍦ㄥ紑濮嬪悓姝ヤ箣鍓嶅繀欏昏繘琛岃韓浠介獙璇侊紝鍚﹀垯瀹冪殑鍚屾璇鋒眰浼?xì)琚嫆缁濄?/span>
#
#
聽(tīng)masterauth聽(tīng)<master-password>

# 聽(tīng)褰撲竴涓猻lave澶卞幓鍜宮aster鐨勮繛鎺ワ紝鎴栬呭悓姝ユ鍦ㄨ繘琛屼腑錛宻lave鐨勮涓烘湁涓ょ鍙兘錛?/span>
#
#
聽(tīng)1)聽(tīng)濡傛灉聽(tīng)slave-serve-stale-data聽(tīng)璁劇疆涓郝?yes"聽(tīng)(榛樿鍊?錛宻lave浼?xì)鐟?hù)緇搷搴斿鎴風(fēng)璇鋒眰錛屽彲鑳芥槸姝e父鏁版嵁錛屼篃鍙兘鏄繕娌¤幏寰楀肩殑絀烘暟鎹?/span>
#
聽(tīng)2)聽(tīng)濡傛灉聽(tīng)slave-serve-stale-data聽(tīng)璁劇疆涓郝?no"錛宻lave浼?xì)鍥炲?姝e湪浠巑aster鍚屾錛圫YNC聽(tīng)with聽(tīng)master聽(tīng)in聽(tīng)progress錛?鏉ュ鐞嗗悇縐嶈姹傦紝闄や簡(jiǎn)聽(tīng)I(yíng)NFO聽(tīng)鍜屄?tīng)SLAVEOF聽(tīng)鍛戒護(hù)銆?/span>
#
slave - serve - stale - data聽(tīng)yes

# 聽(tīng)slave鏍規(guī)嵁鎸囧畾鐨勬椂闂撮棿闅斿悜鏈嶅姟鍣ㄥ彂閫乸ing璇鋒眰銆?/span>
#
聽(tīng)鏃墮棿闂撮殧鍙互閫氳繃聽(tīng)repl_ping_slave_period聽(tīng)鏉ヨ緗?/span>
#
聽(tīng)榛樿10縐掋?/span>
#
#
聽(tīng)repl-ping-slave-period聽(tīng)10

# 聽(tīng)涓嬮潰鐨勯夐」璁劇疆浜?jiǎn)澶у潡鏁版嵁I/O銆佸悜master璇鋒眰鏁版嵁鍜宲ing鍝嶅簲鐨勮繃鏈熸椂闂淬?/span>
#
聽(tīng)榛樿鍊?0縐掋?/span>
#
#
聽(tīng)涓涓緢閲嶈鐨勪簨鎯呮槸錛氱‘淇濊繖涓兼瘮聽(tīng)repl-ping-slave-period聽(tīng)澶э紝鍚﹀垯master鍜宻lave涔嬮棿鐨勪紶杈撹繃鏈熸椂闂存瘮棰勬兂鐨勮鐭?/span>
#
#
聽(tīng)repl-timeout聽(tīng)60

# #################################聽(tīng)瀹夊叏聽(tīng)###################################

# 聽(tīng)瑕佹眰瀹㈡埛绔湪澶勭悊浠諱綍鍛戒護(hù)鏃墮兘瑕侀獙璇佽韓浠藉拰瀵嗙爜銆?/span>
#
聽(tīng)榪欏湪浣犱俊涓嶈繃鏉ヨ鑰呮椂寰堟湁鐢ㄣ?/span>
#
#
聽(tīng)涓轟簡(jiǎn)鍚戝悗鍏煎鐨勮瘽錛岃繖孌靛簲璇ユ敞閲婃帀銆傝屼笖澶у鏁頒漢涓嶉渶瑕佽韓浠介獙璇侊紙渚嬪錛氬畠浠繍琛屽湪鑷繁鐨勬湇鍔″櫒涓娿傦級(jí)
#
聽(tīng)
#
聽(tīng)璀﹀憡錛氬洜涓篟edis澶揩浜?jiǎn)锛屾墍浠ュ眳蹇?jī)涓嶈壇鐨勪汉鍙互姣徔U掑皾璇?50k鐨勫瘑鐮佹潵璇曞浘鐮磋В瀵嗙爜銆?/span>
#
聽(tīng)榪欐剰鍛崇潃浣犻渶瑕佷竴涓珮寮哄害鐨勫瘑鐮侊紝鍚﹀垯鐮磋В澶鏄撲簡(jiǎn)銆?/span>
#
#
聽(tīng)requirepass聽(tīng)foobared

# 聽(tīng)鍛戒護(hù)閲嶅懡鍚?/span>
#
#
聽(tīng)鍦ㄥ叡浜幆澧冧笅錛屽彲浠ヤ負(fù)鍗遍櫓鍛戒護(hù)鏀瑰彉鍚嶅瓧銆傛瘮濡傦紝浣犲彲浠ヤ負(fù)聽(tīng)CONFIG聽(tīng)鏀逛釜鍏朵粬涓嶅お瀹規(guī)槗鐚滃埌鐨勫悕瀛楋紝榪欐牱浣犺嚜宸變粛鐒跺彲浠ヤ嬌鐢紝鑰屽埆浜哄嵈娌℃硶鍋氬潖浜嬩簡(jiǎn)銆?/span>
#
#
聽(tīng)渚嬪:
#
#
聽(tīng)rename-command聽(tīng)CONFIG聽(tīng)b840fc02d524045429941cc15f59e41cb7be6c52
#
#
聽(tīng)鐢氳嚦涔熷彲浠ラ氳繃緇欏懡浠よ祴鍊間竴涓┖瀛楃涓叉潵瀹屽叏紱佺敤榪欐潯鍛戒護(hù)錛?/span>
#
#
聽(tīng)rename-command聽(tīng)CONFIG聽(tīng)""

# ##################################聽(tīng)闄愬埗聽(tīng)####################################

#
#
聽(tīng)璁劇疆鏈澶氬悓鏃惰繛鎺ュ鎴風(fēng)鏁伴噺銆?/span>
#
聽(tīng)榛樿娌℃湁闄愬埗錛岃繖涓叧緋誨埌Redis榪涚▼鑳藉鎵撳紑鐨勬枃浠舵弿榪扮鏁伴噺銆?/span>
#
聽(tīng)鐗規(guī)畩鍊?0"琛ㄧず娌℃湁闄愬埗銆?/span>
#
聽(tīng)涓鏃﹁揪鍒拌繖涓檺鍒訛紝Redis浼?xì)鍏抽棴鎵鏈夋柊榪炴帴騫跺彂閫侀敊璇?杈懼埌鏈澶х敤鎴鋒暟涓婇檺錛坢ax聽(tīng)number聽(tīng)of聽(tīng)clients聽(tīng)reached錛?
#
#
聽(tīng)maxclients聽(tīng)128

# 聽(tīng)涓嶈鐢ㄦ瘮璁劇疆鐨勪笂闄愭洿澶氱殑鍐呭瓨銆備竴鏃﹀唴瀛樹(shù)嬌鐢ㄨ揪鍒頒笂闄愶紝Redis浼?xì)鏍规嵁閫夊畾鐨勫洖鏀剁瓥鐣ワ紙鍙傝錛歮axmemmory-policy錛夊垹闄ey銆?/span>
#
#
聽(tīng)濡傛灉鍥犱負(fù)鍒犻櫎絳栫暐闂Redis鏃犳硶鍒犻櫎key錛屾垨鑰呯瓥鐣ヨ緗負(fù)聽(tīng)"noeviction"錛孯edis浼?xì)鍥炲闇瑕佹洿澶氬唴瀛樼殑閿欒淇℃伅緇欏懡浠ゃ?/span>
#
聽(tīng)渚嬪錛孲ET,LPUSH絳夌瓑銆備絾鏄細(xì)緇х畫(huà)鍚堢悊鍝嶅簲鍙鍛戒護(hù)錛屾瘮濡傦細(xì)GET銆?/span>
#
#
聽(tīng)鍦ㄤ嬌鐢≧edis浣滀負(fù)LRU緙撳瓨錛屾垨鑰呬負(fù)瀹炰緥璁劇疆浜?jiǎn)纭у唴瀛橀檺鍒剁殑鏃跺欙紙浣跨敤聽(tīng)"noeviction"聽(tīng)絳栫暐錛夌殑鏃跺欙紝榪欎釜閫夐」榪樻槸婊℃湁鐢ㄧ殑銆?/span>
#
#
聽(tīng)璀﹀憡錛氬綋涓鍫唖lave榪炰笂杈懼埌鍐呭瓨?shù)笂闄愮殑瀹炰緥鐨勬椂鍊欙紝鍝嶅簲slave闇瑕佺殑杈撳嚭緙撳瓨鎵闇鍐呭瓨?shù)笉璁〗帡鍦ㄤ娇鐢ㄥ唴瀛樺綋涓?/span>
#
聽(tīng)榪欐牱褰撹姹備竴涓垹闄ゆ帀鐨刱ey鐨勬椂鍊欏氨涓嶄細(xì)瑙﹀彂緗戠粶闂錛忛噸鏂板悓姝ョ殑浜嬩歡錛岀劧鍚巗lave灝變細(xì)鏀跺埌涓鍫嗗垹闄ゆ寚浠わ紝鐩村埌鏁版嵁搴撶┖浜?jiǎn)湄?fù)姝€?/span>
#
#
聽(tīng)綆鑰岃█涔嬶紝濡傛灉浣犳湁slave榪炰笂涓涓猰aster鐨勮瘽錛岄偅寤鴻浣犳妸master鍐呭瓨闄愬埗璁懼皬鐐瑰効錛岀‘淇濇湁瓚沖鐨勭郴緇熷唴瀛樼敤浣滆緭鍑虹紦瀛樸?/span>
#
聽(tīng)錛堝鏋滅瓥鐣ヨ緗負(fù)"noeviction"鐨勮瘽灝變笉鏃犳墍璋撲簡(jiǎn)錛?/span>
#
#
聽(tīng)maxmemory聽(tīng)<bytes>

# 聽(tīng)鍐呭瓨絳栫暐錛氬鏋滆揪鍒板唴瀛橀檺鍒朵簡(jiǎn)錛孯edis濡備綍鍒犻櫎key銆備綘鍙互鍦ㄤ笅闈簲涓瓥鐣ラ噷闈㈤夛細(xì)
#
聽(tīng)
#
聽(tīng)volatile-lru聽(tīng)->聽(tīng)鏍規(guī)嵁LRU綆楁硶鐢熸垚鐨勮繃鏈熸椂闂存潵鍒犻櫎銆?/span>
#
聽(tīng)allkeys-lru聽(tīng)->聽(tīng)鏍規(guī)嵁LRU綆楁硶鍒犻櫎浠諱綍key銆?/span>
#
聽(tīng)volatile-random聽(tīng)->聽(tīng)鏍規(guī)嵁榪囨湡璁劇疆鏉ラ殢鏈哄垹闄ey銆?/span>
#
聽(tīng)allkeys->random聽(tīng)->聽(tīng)鏃犲樊鍒殢鏈哄垹銆?/span>
#
聽(tīng)volatile-ttl聽(tīng)->聽(tīng)鏍規(guī)嵁鏈榪戣繃鏈熸椂闂存潵鍒犻櫎錛堣緟浠TL錛?/span>
#
聽(tīng)noeviction聽(tīng)->聽(tīng)璋佷篃涓嶅垹錛岀洿鎺ュ湪鍐欐搷浣滄椂榪斿洖閿欒銆?/span>
#
聽(tīng)
#
聽(tīng)娉ㄦ剰錛氬鎵鏈夌瓥鐣ユ潵璇達(dá)紝濡傛灉Redis鎵句笉鍒板悎閫傜殑鍙互鍒犻櫎鐨刱ey閮戒細(xì)鍦ㄥ啓鎿嶄綔鏃惰繑鍥炰竴涓敊璇?/span>
#
#
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)榪欓噷娑夊強(qiáng)鐨勫懡浠わ細(xì)set聽(tīng)setnx聽(tīng)setex聽(tīng)append
#
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)incr聽(tīng)decr聽(tīng)rpush聽(tīng)lpush聽(tīng)rpushx聽(tīng)lpushx聽(tīng)linsert聽(tīng)lset聽(tīng)rpoplpush聽(tīng)sadd
#
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)sinter聽(tīng)sinterstore聽(tīng)sunion聽(tīng)sunionstore聽(tīng)sdiff聽(tīng)sdiffstore聽(tīng)zadd聽(tīng)zincrby
#
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)zunionstore聽(tīng)zinterstore聽(tīng)hset聽(tīng)hsetnx聽(tīng)hmset聽(tīng)hincrby聽(tīng)incrby聽(tīng)decrby
#
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)getset聽(tīng)mset聽(tīng)msetnx聽(tīng)exec聽(tīng)sort
#
#
聽(tīng)榛樿鍊煎涓嬶細(xì)
#
#
聽(tīng)maxmemory-policy聽(tīng)volatile-lru

# 聽(tīng)LRU鍜屾渶灝廡TL綆楁硶鐨勫疄鐜伴兘涓嶆槸寰堢簿紜紝浣嗘槸寰堟帴榪戯紙涓轟簡(jiǎn)鐪佸唴瀛橈級(jí)錛屾墍浠ヤ綘鍙互鐢ㄦ牱渚嬪仛嫻嬭瘯銆?/span>
#
聽(tīng)渚嬪錛氶粯璁edis浼?xì)妫鏌ヤ笁涓猭ey鐒跺悗鍙栨渶鏃х殑閭d釜錛屼綘鍙互閫氳繃涓嬮潰鐨勯厤緗」鏉ヨ緗牱鏈殑涓暟銆?/span>
#
#
聽(tīng)maxmemory-samples聽(tīng)3

# #############################聽(tīng)綰瘡鍔犳ā寮徛?##############################

# 聽(tīng)榛樿鎯呭喌涓嬶紝Redis鏄紓姝ョ殑鎶婃暟鎹鍑哄埌紓佺洏?shù)笂銆傝繖縐嶆儏鍐典笅錛屽綋Redis鎸傛帀鐨勬椂鍊欙紝鏈鏂扮殑鏁版嵁灝變涪浜?jiǎn)銆?/span>
#
聽(tīng)濡傛灉涓嶅笇鏈涗涪鎺変換浣曚竴鏉℃暟鎹殑璇濆氨璇ョ敤綰瘡鍔犳ā寮忥細(xì)涓鏃﹀紑鍚繖涓ā寮忥紝Redis浼?xì)鎶婃瘡娆″啓鍏ョ殑鏁版嵁鍦ㄦ帴鏀跺悗閮藉啓鍏ヂ?tīng)appendonly.aof聽(tīng)鏂囦歡銆?/span>
#
聽(tīng)姣忔鍚姩鏃禦edis閮戒細(xì)鎶婅繖涓枃浠剁殑鏁版嵁璇誨叆鍐呭瓨閲屻?/span>
#
#
聽(tīng)娉ㄦ剰錛屽紓姝ュ鍑虹殑鏁版嵁搴撴枃浠跺拰綰瘡鍔犳枃浠跺彲浠ュ茍瀛橈紙浣犲緱鎶婁笂闈㈡墍鏈?save"璁劇疆閮芥敞閲婃帀錛屽叧鎺夊鍑烘満鍒訛級(jí)銆?/span>
#
聽(tīng)濡傛灉綰瘡鍔犳ā寮忓紑鍚簡(jiǎn)錛岄偅涔圧edis浼?xì)鍦ㄥ惎鍔ㄦ椂铦插叆鏃ュ織鏂囦欢鑰屽拷鐣ュ鍑虹殑聽(tīng)dump.rdb聽(tīng)鏂囦歡銆?/span>
#
#
聽(tīng)閲嶈錛氭煡鐪嬄?tīng)BGREWRITEAOF聽(tīng)鏉ヤ簡(jiǎn)瑙e綋绱姞鏃ュ織鏂囦歡澶ぇ浜?jiǎn)涔嬪悗锛屾庝箞鍦ㄥ悗鍙伴噸鏂板鐞嗚繖涓棩蹇楁枃浠躲?/span>

appendonly聽(tīng)no

# 聽(tīng)綰瘡鍔犳枃浠跺悕瀛楋紙榛樿錛?appendonly.aof"錛?/span>
#
聽(tīng)appendfilename聽(tīng)appendonly.aof

# 聽(tīng)fsync()聽(tīng)璇鋒眰鎿嶄綔緋葷粺椹笂鎶婃暟鎹啓鍒扮鐩樹(shù)笂錛屼笉瑕佸啀絳変簡(jiǎn)銆?/span>
#
聽(tīng)鏈変簺鎿嶄綔緋葷粺浼?xì)鐪熺殑鎶婃暟鎹┈涓婂埛鍒凹倎鐩樹(shù)笂锛涙湁浜涘垯瑕伡偍韫竴涓嬶紝浣嗘槸浼?xì)灏藉揩鍘诲仛銆?/span>
#
#
聽(tīng)Redis鏀寔涓夌涓嶅悓鐨勬ā寮忥細(xì)
#
#
聽(tīng)no錛氫笉瑕佺珛鍒誨埛錛屽彧鏈夊湪鎿嶄綔緋葷粺闇瑕佸埛鐨勬椂鍊欏啀鍒楓傛瘮杈冨揩銆?/span>
#
聽(tīng)always錛氭瘡嬈″啓鎿嶄綔閮界珛鍒誨啓鍏ュ埌aof鏂囦歡銆傛參錛屼絾鏄渶瀹夊叏銆?/span>
#
聽(tīng)everysec錛氭瘡縐掑啓涓嬈°傛姌琛鋒柟妗堛?/span>
#
#
聽(tīng)榛樿鐨劼?everysec"聽(tīng)閫氬父鏉ヨ鑳藉湪閫熷害鍜屾暟鎹畨鍏ㄦт箣闂村彇寰楁瘮杈冨ソ鐨勫鉤琛°?/span>
#
聽(tīng)濡傛灉浣犵湡鐨勭悊瑙d簡(jiǎn)榪欎釜鎰忓懗鐫浠涔堬紝閭d箞璁劇疆"no"鍙互鑾峰緱鏇村ソ鐨勬ц兘琛ㄧ幇錛堝鏋滀涪鏁版嵁鐨勮瘽錛屽垯鍙兘鎷垮埌涓涓笉鏄緢鏂扮殑蹇収錛夛紱
#
聽(tīng)鎴栬呯浉鍙嶇殑錛屼綘閫夋嫨聽(tīng)"always"聽(tīng)鏉ョ壓鐗查熷害紜繚鏁版嵁瀹夊叏銆佸畬鏁淬?/span>
#
#
聽(tīng)濡傛灉鎷夸笉鍑嗭紝灝辯敤聽(tīng)"everysec"

# 聽(tīng)appendfsync聽(tīng)always
appendfsync聽(tīng)everysec
# 聽(tīng)appendfsync聽(tīng)no

# 聽(tīng)濡傛灉AOF鐨勫悓姝ョ瓥鐣ヨ緗垚聽(tīng)"always"聽(tīng)鎴栬吢?everysec"錛岄偅涔堝悗鍙扮殑瀛樺偍榪涚▼錛堝悗鍙板瓨鍌ㄦ垨鍐欏叆AOF鏃ュ織錛変細(xì)浜х敓寰堝紓佺洏I(yè)/O寮閿銆?/span>
#
聽(tīng)鏌愪簺Linux鐨勯厤緗笅浼?xì)鋴蒖edis鍥犱負(fù)聽(tīng)fsync()聽(tīng)鑰岄樆濉炲緢涔呫?/span>
#
聽(tīng)娉ㄦ剰錛岀洰鍓嶅榪欎釜鎯呭喌榪樻病鏈夊畬緹庝慨姝o紝鐢氳嚦涓嶅悓綰跨▼鐨劼?tīng)fsync()聽(tīng)浼?xì)闃诲鎴戜滑鐨劼?tīng)write(2)聽(tīng)璇鋒眰銆?/span>
#
#
聽(tīng)涓轟簡(jiǎn)緙撹В榪欎釜闂錛屽彲浠ョ敤涓嬮潰榪欎釜閫夐」銆傚畠鍙互鍦?tīng)BGSAVE聽(tīng)鎴柭?tīng)BGREWRITEAOF聽(tīng)澶勭悊鏃墮樆姝⒙?tīng)fsync()銆?/span>
#
聽(tīng)
#
聽(tīng)榪欏氨鎰忓懗鐫濡傛灉鏈夊瓙榪涚▼鍦ㄨ繘琛屼繚瀛樻搷浣滐紝閭d箞Redis灝卞浜?涓嶅彲鍚屾"鐨勭姸鎬併?/span>
#
聽(tīng)榪欏疄闄呬笂鏄錛屽湪鏈宸殑鎯呭喌涓嬪彲鑳戒細(xì)涓㈡帀30縐掗挓鐨勬棩蹇楁暟鎹傦紙榛樿Linux璁懼畾錛?/span>
#
聽(tīng)
#
聽(tīng)濡傛灉浣犳湁寤惰繜鐨勯棶棰橀偅灝辨妸榪欎釜璁句負(fù)聽(tīng)"yes"錛屽惁鍒欏氨淇濇寔聽(tīng)"no"錛岃繖鏄繚瀛樻寔涔呮暟鎹殑鏈瀹夊叏鐨勬柟寮忋?/span>
no - appendfsync - on - rewrite聽(tīng)no

# 聽(tīng)鑷姩閲嶅啓AOF鏂囦歡
#
#
聽(tīng)濡傛灉AOF鏃ュ織鏂囦歡澶у埌鎸囧畾鐧懼垎姣旓紝Redis鑳藉閫氳繃聽(tīng)BGREWRITEAOF聽(tīng)鑷姩閲嶅啓AOF鏃ュ織鏂囦歡銆?/span>
#
聽(tīng)
#
聽(tīng)宸ヤ綔鍘熺悊錛歊edis璁頒綇涓婃閲嶅啓鏃禔OF鏃ュ織鐨勫ぇ灝忥紙鎴栬呴噸鍚悗娌℃湁鍐欐搷浣滅殑璇濓紝閭e氨鐩存帴鐢ㄦ鏃剁殑AOF鏂囦歡錛夛紝
#
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)鍩哄噯灝哄鍜屽綋鍓嶅昂瀵稿仛姣旇緝銆傚鏋滃綋鍓嶅昂瀵歌秴榪囨寚瀹氭瘮渚嬶紝灝變細(xì)瑙﹀彂閲嶅啓鎿嶄綔銆?/span>
#
#
聽(tīng)浣犺繕闇瑕佹寚瀹氳閲嶅啓鏃ュ織鐨勬渶灝忓昂瀵革紝榪欐牱閬垮厤浜?jiǎn)杈惧埌绾﹀畾鐧惧垎姣斾絾灏哄粛鐒跺緢灝忕殑鎯呭喌榪樿閲嶅啓銆?/span>
#
#
聽(tīng)鎸囧畾鐧懼垎姣斾負(fù)0浼?xì)绂佺敤AOF鑷姩閲嶅啓鐗規(guī)с?/span>

auto
- aof - rewrite - percentage聽(tīng) 100
auto
- aof - rewrite - min - size聽(tīng)64mb

# #################################聽(tīng)鎱㈡煡璇㈡棩蹇椔?##################################

# 聽(tīng)Redis鎱㈡煡璇㈡棩蹇楀彲浠ヨ褰曡秴榪囨寚瀹氭椂闂寸殑鏌ヨ銆傝繍琛屾椂闂翠笉鍖呮嫭鍚勭I/O鏃墮棿銆?/span>
#
聽(tīng)渚嬪錛氳繛鎺ュ鎴風(fēng)錛屽彂閫佸搷搴旀暟鎹瓑銆傚彧璁$畻鍛戒護(hù)榪愯鐨勫疄闄呮椂闂達(dá)紙榪欐槸鍞竴涓縐嶅懡浠よ繍琛岀嚎紼嬮樆濉炶屾棤娉曞悓鏃朵負(fù)鍏朵粬璇鋒眰鏈嶅姟鐨勫満鏅級(jí)
#
聽(tīng)
#
聽(tīng)浣犲彲浠ヤ負(fù)鎱㈡煡璇㈡棩蹇楅厤緗袱涓弬鏁幫細(xì)涓涓槸瓚呮爣鏃墮棿錛屽崟浣嶄負(fù)寰錛岃褰曡秴榪囦釜鏃墮棿鐨勫懡浠ゃ?/span>
#
聽(tīng)鍙︿竴涓槸鎱㈡煡璇㈡棩蹇楅暱搴︺傚綋涓涓柊鐨勫懡浠よ鍐欒繘鏃ュ織鐨勬椂鍊欙紝鏈鑰佺殑閭d釜璁板綍浼?xì)琚垹鎺夈?/span>
#
#
聽(tīng)涓嬮潰鐨勬椂闂村崟浣嶆槸寰錛屾墍浠?000000灝辨槸1縐掋傛敞鎰忥紝璐熸暟鏃墮棿浼?xì)绂佺敤鎱㈡煡璇㈡棩蹇楀Q岃?鍒欎細(xì)寮哄埗璁板綍鎵鏈夊懡浠ゃ?/span>
slowlog - log - slower - than聽(tīng) 10000

# 聽(tīng)榪欎釜闀垮害娌℃湁闄愬埗銆傚彧瑕佹湁瓚沖鐨勫唴瀛樺氨琛屻備綘鍙互閫氳繃聽(tīng)SLOWLOG聽(tīng)RESET聽(tīng)鏉ラ噴鏀懼唴瀛樸傦紙璇戣呮敞錛氭棩蹇楀眳鐒舵槸鍦ㄥ唴瀛橀噷鐨凮rz錛?/span>
slowlog - max - len聽(tīng) 128

# ###############################聽(tīng)铏氭嫙鍐呭瓨聽(tīng)###############################

# ##聽(tīng)璀﹀憡錛佽櫄鎷熷唴瀛樺湪Redis聽(tīng)2.4鏄弽瀵圭殑銆?/span>
#
##聽(tīng)闈炲父涓嶉紦鍔變嬌鐢ㄨ櫄鎷熷唴瀛橈紒錛?/span>

# 聽(tīng)铏氭嫙鍐呭瓨鍙互浣縍edis鍦ㄥ唴瀛樹(shù)笉澶熺殑鎯呭喌涓嬩粛鐒跺彲浠ュ皢鎵鏈夋暟鎹簭鍒椾繚瀛樺湪鍐呭瓨閲屻?/span>
#
聽(tīng)涓轟簡(jiǎn)鍋氬埌榪欎竴鐐癸紝楂橀key浼?xì)璋冨埌鍐呭瓨閲屽Q岃屼綆棰慿ey浼?xì)铦{鍒頒氦鎹㈡枃浠墮噷錛屽氨鍍忔搷浣滅郴緇熶嬌鐢ㄥ唴瀛橀〉涓鏍楓?/span>
#
#
聽(tīng)瑕佷嬌鐢ㄨ櫄鎷熷唴瀛橈紝鍙鎶娐?vm-enabled"聽(tīng)璁劇疆涓郝?yes"錛屽茍鏍規(guī)嵁闇瑕佽緗笅闈笁涓櫄鎷熷唴瀛樺弬鏁板氨鍙互浜?jiǎn)銆?/span>

vm
- enabled聽(tīng)no
# 聽(tīng)vm-enabled聽(tīng)yes

# 聽(tīng)榪欐槸浜ゆ崲鏂囦歡鐨勮礬寰勩備及璁′綘鐚滃埌浜?jiǎn)锛屼氦鎹㈡枃錃g涓嶈兘鍦ㄥ涓猂edis瀹炰緥涔嬮棿鍏變韓錛屾墍浠ョ‘淇濇瘡涓猂edis瀹炰緥浣跨敤涓涓嫭绔嬩氦鎹㈡枃浠躲?/span>
#
#
聽(tīng)鏈濂界殑淇濆瓨?shù)氦鎹㈡枃錃g錛堣闅忔満璁塊棶錛夌殑浠嬭川鏄浐鎬佺‖鐩橈紙SSD錛夈?/span>
#
#
聽(tīng)***聽(tīng)璀﹀憡聽(tīng)***聽(tīng)濡傛灉浣犱嬌鐢ㄥ叡浜富鏈猴紝閭d箞榛樿鐨勪氦鎹㈡枃浠舵斁鍒奧?tmp聽(tīng)涓嬫槸涓嶅畨鍏ㄧ殑銆?/span>
#
聽(tīng)鍒涘緩涓涓猂edis鐢ㄦ埛鍙啓鐨勭洰褰曪紝騫墮厤緗甊edis鍦ㄨ繖閲屽垱寤轟氦鎹㈡枃浠躲?/span>
vm - swap - file聽(tīng) / tmp / redis.swap

# 聽(tīng)"vm-max-memory"聽(tīng)閰嶇疆铏氭嫙鍐呭瓨鍙敤鐨勬渶澶у唴瀛樺閲忋?/span>
#
聽(tīng)濡傛灉浜ゆ崲鏂囦歡榪樻湁絀洪棿鐨勮瘽錛屾墍鏈夎秴鏍囬儴鍒嗛兘浼?xì)鏀惧堫C氦鎹㈡枃浠墮噷銆?/span>
#
#
聽(tīng)"vm-max-memory"聽(tīng)璁劇疆涓?琛ㄧず緋葷粺浼?xì)鐢ㄦ帀鎵鏈夊彲鐢ㄥ唴瀛樸?/span>
#
聽(tīng)榪欓粯璁ゅ間笉鍜嬪湴錛屽彧鏄妸浣犺兘鐢ㄧ殑鍐呭瓨鍏ㄧ敤鎺変簡(jiǎn)錛岀暀鐐逛綑閲忎細(xì)鏇村ソ銆?/span>
#
聽(tīng)渚嬪錛岃緗負(fù)鍓╀綑鍐呭瓨鐨?0%-80%銆?/span>
vm - max - memory聽(tīng)0

# 聽(tīng)Redis浜ゆ崲鏂囦歡鏄垎鎴愬涓暟鎹〉鐨勩?/span>
#
聽(tīng)涓涓彲瀛樺偍瀵硅薄鍙互琚繚瀛樺湪澶氫釜榪炵畫(huà)欏甸噷錛屼絾鏄竴涓暟鎹〉鏃犳硶琚涓璞″叡浜?/span>
#
聽(tīng)鎵浠ワ紝濡傛灉浣犵殑鏁版嵁欏靛お澶э紝閭d箞灝忓璞″氨浼?xì)娴匆?guī)帀寰堝絀洪棿銆?/span>
#
聽(tīng)濡傛灉鏁版嵁欏靛お灝忥紝閭g敤浜庡瓨鍌ㄧ殑浜ゆ崲絀洪棿灝變細(xì)鏇村皯錛堝亣瀹氫綘璁劇疆鐩稿悓鐨勬暟鎹〉鏁伴噺錛?/span>
#
#
聽(tīng)濡傛灉浣犱嬌鐢ㄥ緢澶氬皬瀵硅薄錛屽緩璁垎欏靛昂瀵鎬負(fù)64鎴?2涓瓧鑺傘?/span>
#
聽(tīng)濡傛灉浣犱嬌鐢ㄥ緢澶氬ぇ瀵硅薄錛岄偅灝辯敤澶т竴浜涚殑灝哄銆?/span>
#
聽(tīng)濡傛灉涓嶇‘瀹氾紝閭e氨鐢ㄩ粯璁ゅ悸?)
vm - page - size聽(tīng) 32

# 聽(tīng)浜ゆ崲鏂囦歡閲屾暟鎹〉鎬繪暟銆?/span>
#
聽(tīng)鏍規(guī)嵁鍐呭瓨?shù)腑鍒啓宓琛ㄥQ堝凡鐢?鏈敤鐨勬暟鎹〉鍒嗗竷鎯呭喌錛夛紝紓佺洏?shù)笂姣?涓暟鎹〉浼?xì)娑堣楀唴瀛橀噷1涓瓧鑺傘?/span>
#
#
聽(tīng)浜ゆ崲鍖哄閲徛?聽(tīng)vm-page-size聽(tīng)*聽(tīng)vm-pages
#
#
聽(tīng)鏍規(guī)嵁榛樿鐨?2瀛楄妭鐨勬暟鎹〉灝哄鍜?34217728鐨勬暟鎹〉鏁版潵綆楋紝Redis鐨勬暟鎹〉鏂囦歡浼?xì)鍗?GB錛岃屽唴瀛橀噷鐨勫垎欏佃〃浼?xì)娑堣?6MB鍐呭瓨銆?/span>
#
#
聽(tīng)涓轟綘鐨勫簲楠岀▼搴忚緗渶灝忎笖澶熺敤鐨勬暟瀛楁瘮杈冨ソ錛屼笅闈㈣繖涓粯璁ゅ煎湪澶у鏁版儏鍐典笅閮芥槸鍋忓ぇ鐨勩?/span>
vm - pages聽(tīng) 134217728

# 聽(tīng)鍚屾椂鍙繍琛岀殑铏氭嫙鍐呭瓨I(yè)/O綰跨▼鏁般?/span>
#
聽(tīng)榪欎簺綰跨▼鍙互瀹屾垚浠庝氦鎹㈡枃浠惰繘琛屾暟鎹鍐欑殑鎿嶄綔錛屼篃鍙互澶勭悊鏁版嵁鍦ㄥ唴瀛樹(shù)笌紓佺洏闂寸殑浜や簰鍜岀紪鐮?瑙g爜澶勭悊銆?/span>
#
聽(tīng)澶氫竴浜涚嚎紼嬪彲浠ヤ竴瀹氱▼搴︿笂鎻愰珮澶勭悊鏁堢巼錛岃櫧鐒禝/O鎿嶄綔鏈韓渚濊禆浜庣墿鐞嗚澶囩殑闄愬埗錛屼笉浼?xì)鍥犱负鏇村鐨劸U跨▼鑰屾彁楂樺崟嬈¤鍐欐搷浣滅殑鏁堢巼銆?/span>
#
#
聽(tīng)鐗規(guī)畩鍊?浼?xì)鍏抽棴绾拷E嬬駭I/O錛屽茍浼?xì)寮鍚樆濉炶櫄鎷熷唴瀛樻満鍒躲?/span>
vm - max - threads聽(tīng) 4

# ##############################聽(tīng)楂樼駭閰嶇疆聽(tīng)###############################

# 聽(tīng)褰撴湁澶ч噺鏁版嵁鏃訛紝閫傚悎鐢ㄥ搱甯岀紪鐮侊紙闇瑕佹洿澶氱殑鍐呭瓨錛夛紝鍏冪礌鏁伴噺涓婇檺涓嶈兘瓚呰繃緇欏畾闄愬埗銆?/span>
#
聽(tīng)浣犲彲浠ラ氳繃涓嬮潰鐨勯夐」鏉ヨ瀹氳繖浜涢檺鍒訛細(xì)
hash - max - zipmap - entries聽(tīng) 512
hash
- max - zipmap - value聽(tīng) 64

# 聽(tīng)涓庡搱甯岀浉綾諱技錛屾暟鎹厓绱犺緝?yōu)畱鐨勬儏鍐典笅锛屽彲浠ョ敤鍙︿竴縐嶆柟寮忔潵緙栫爜浠庤岃妭鐪佸ぇ閲忕┖闂淬?/span>
#
聽(tīng)榪欑鏂瑰紡鍙湁鍦ㄧ鍚堜笅闈㈤檺鍒剁殑鏃跺欐墠鍙互鐢細(xì)
list - max - ziplist - entries聽(tīng) 512
list
- max - ziplist - value聽(tīng) 64

# 聽(tīng)榪樻湁榪欐牱涓縐嶇壒孌婄紪鐮佺殑鎯呭喌錛氭暟鎹叏鏄?4浣嶆棤絎﹀彿鏁村瀷鏁板瓧鏋勬垚鐨勫瓧絎︿覆銆?/span>
#
聽(tīng)涓嬮潰榪欎釜閰嶇疆欏瑰氨鏄敤鏉ラ檺鍒惰繖縐嶆儏鍐典笅浣跨敤榪欑緙栫爜鐨勬渶澶т笂闄愮殑銆?/span>
set - max - intset - entries聽(tīng) 512

# 聽(tīng)涓庣涓銆佺浜岀鎯呭喌鐩鎬技錛屾湁搴忓簭鍒椾篃鍙互鐢ㄤ竴縐嶇壒鍒殑緙栫爜鏂瑰紡鏉ュ鐞嗭紝鍙妭鐪佸ぇ閲忕┖闂淬?/span>
#
聽(tīng)榪欑緙栫爜鍙傚悎闀垮害鍜屽厓绱犻兘絎﹀悎涓嬮潰闄愬埗鐨勬湁搴忓簭鍒楋細(xì)
zset - max - ziplist - entries聽(tīng) 128
zset
- max - ziplist - value聽(tīng) 64

# 聽(tīng)鍝堝笇鍒鋒柊錛屾瘡100涓狢PU姣浼?xì)鎷垮?涓縐掓潵鍒鋒柊Redis鐨勪富鍝堝笇琛紙欏剁駭閿兼槧灝勮〃錛夈?/span>
#
聽(tīng)redis鎵鐢ㄧ殑鍝堝笇琛ㄥ疄鐜幫紙瑙乨ict.c錛夐噰鐢ㄥ歡榪熷搱甯屽埛鏂版満鍒訛細(xì)浣犲涓涓搱甯岃〃鎿嶄綔瓚婂錛屽搱甯屽埛鏂版搷浣滃氨瓚婇綣侊紱
#
聽(tīng)鍙嶄箣錛屽鏋滄湇鍔″櫒闈炲父涓嶆椿璺冮偅涔堜篃灝辨槸鐢ㄧ偣鍐呭瓨?shù)繚瀛樺搱甯岃〃鑰屽凡銆?/span>
#
聽(tīng)
#
聽(tīng)榛樿鏄瘡縐掗挓榪涜10嬈″搱甯岃〃鍒鋒柊錛岀敤鏉ュ埛鏂板瓧鍏革紝鐒跺悗灝藉揩閲婃斁鍐呭瓨銆?/span>
#
#
聽(tīng)寤鴻錛?/span>
#
聽(tīng)濡傛灉浣犲寤惰繜姣旇緝鍦ㄦ剰鐨勮瘽灝辯敤聽(tīng)"activerehashing聽(tīng)no"錛屾瘡涓姹傚歡榪?姣涓嶅お濂藉槢銆?/span>
#
聽(tīng)濡傛灉浣犱笉澶湪鎰忓歡榪熻屽笇鏈涘敖蹇噴鏀懼唴瀛樼殑璇濆氨璁劇疆聽(tīng)"activerehashing聽(tīng)yes"銆?/span>
activerehashing聽(tīng)yes

# #################################聽(tīng)鍖呭惈聽(tīng)###################################

# 聽(tīng)鍖呭惈涓涓垨澶氫釜鍏朵粬閰嶇疆鏂囦歡銆?/span>
#
聽(tīng)榪欏湪浣犳湁鏍囧噯閰嶇疆妯℃澘浣嗘槸姣忎釜redis鏈嶅姟鍣ㄥ張闇瑕佷釜鎬ц緗殑鏃跺欏緢鏈夌敤銆?/span>
#
聽(tīng)鍖呭惈鏂囦歡鐗規(guī)у厑璁鎬綘寮曚漢鍏朵粬閰嶇疆鏂囦歡錛屾墍浠ュソ濂藉埄鐢ㄥ惂銆?/span>
#
#
聽(tīng)include聽(tīng)/path/to/local.conf
#
聽(tīng)include聽(tīng)/path/to/other.conf

]]>
JVM鐩戞帶宸ュ叿浠嬬粛 http://m.tkk7.com/b47248054/articles/337905.html錛堝寳浜級(jí)鏈ㄦ湪錛堝寳浜級(jí)鏈ㄦ湪Fri, 12 Nov 2010 05:29:00 GMThttp://m.tkk7.com/b47248054/articles/337905.htmlhttp://m.tkk7.com/b47248054/comments/337905.htmlhttp://m.tkk7.com/b47248054/articles/337905.html#Feedback0http://m.tkk7.com/b47248054/comments/commentRss/337905.htmlhttp://m.tkk7.com/b47248054/services/trackbacks/337905.html jstatd
鍚姩jvm鐩戞帶鏈嶅姟銆傚畠鏄竴涓熀浜巖mi鐨勫簲鐢紝鍚戣繙紼嬫満鍣ㄦ彁渚涙湰鏈簀vm搴旂敤紼嬪簭鐨勪俊鎭傞粯璁ょ鍙?099銆?br />瀹炰緥錛歫statd -J-Djava.security.policy=my.policy

my.policy鏂囦歡闇瑕佽嚜宸卞緩绔嬶紝鍐呭濡備笅錛?br />grant codebase "file:$JAVA_HOME/lib/tools.jar" {
聽(tīng)permission java.security.AllPermission;
};
榪欐槸瀹夊叏絳栫暐鏂囦歡錛屽洜涓簀dk瀵筳vm鍋氫簡(jiǎn)jaas鐨勫畨鍏ㄦ嫻嬶紝鎵浠ユ垜浠繀欏昏緗竴浜涚瓥鐣ワ紝浣垮緱jstatd琚厑璁鎬綔緗戠粶鎿嶄綔

jps
鍒楀嚭鎵鏈夌殑jvm瀹炰緥
瀹炰緥錛?br />jps
鍒楀嚭鏈満鎵鏈夌殑jvm瀹炰緥

jps 192.168.0.77
鍒楀嚭榪滅▼鏈嶅姟鍣?92.168.0.77鏈哄櫒鎵鏈夌殑jvm瀹炰緥錛岄噰鐢╮mi鍗忚錛岄粯璁よ繛鎺ョ鍙d負(fù)1099
錛堝墠鎻愭槸榪滅▼鏈嶅姟鍣ㄦ彁渚沯statd鏈嶅姟錛?br />
杈撳嚭鍐呭濡備笅錛?br />jones@jones:~/data/ebook/java/j2se/jdk_gc$ jps
6286 Jps
6174聽(tīng) Jstat

jconsole
涓涓浘褰㈠寲鐣岄潰錛屽彲浠ヨ瀵熷埌java榪涚▼鐨刧c錛宑lass錛屽唴瀛樼瓑淇℃伅銆傝櫧鐒舵瘮杈冪洿瑙傦紝浣嗘槸涓漢榪樻槸姣旇緝鍊懼悜浜庝嬌鐢╦stat鍛戒護(hù)錛堝湪鏈鍚庝竴閮ㄥ垎浼?xì)瀵筳stat浣滆緇嗙殑浠嬬粛錛夈?br />
jinfo錛坙inux涓嬬壒鏈夛級(jí)
瑙傚療榪愯涓殑java紼嬪簭鐨勮繍琛岀幆澧冨弬鏁幫細(xì)鍙傛暟鍖呮嫭Java System灞炴у拰JVM鍛戒護(hù)琛屽弬鏁?br />瀹炰緥錛歫info 2083
鍏朵腑2083灝辨槸java榪涚▼id鍙鳳紝鍙互鐢╦ps寰楀埌榪欎釜id鍙楓?br />杈撳嚭鍐呭澶浜?jiǎn)锛屼笉鍦q欓噷涓涓鍒椾婦錛屽ぇ瀹跺彲浠ヨ嚜宸卞皾璇曡繖涓懡浠ゃ?br />
jstack錛坙inux涓嬬壒鏈夛級(jí)
鍙互瑙傚療鍒癹vm涓綋鍓嶆墍鏈夌嚎紼嬬殑榪愯鎯呭喌鍜岀嚎紼嬪綋鍓嶇姸鎬?br />jstack 2083
杈撳嚭鍐呭濡備笅錛?br />

jmap錛坙inux涓嬬壒鏈夛紝涔熸槸寰堝父鐢ㄧ殑涓涓懡浠わ級(jí)
瑙傚療榪愯涓殑jvm鐗╃悊鍐呭瓨鐨勫崰鐢ㄦ儏鍐點(diǎn)?br />鍙傛暟濡備笅錛?strong>
-heap錛氭墦鍗癹vm heap鐨勬儏鍐?br />-histo錛?/strong>鎵撳嵃jvm heap鐨勭洿鏂瑰浘銆傚叾杈撳嚭淇℃伅鍖呮嫭綾誨悕錛屽璞℃暟閲忥紝瀵硅薄鍗犵敤澶у皬銆?br />-histo錛歭ive 錛?/strong>鍚屼笂錛屼絾鏄彧絳斿簲瀛樻椿瀵硅薄鐨勬儏鍐?br />-permstat錛?/strong>鎵撳嵃permanent generation heap鎯呭喌

鍛戒護(hù)浣跨敤錛?br />jmap -heap 2083
鍙互瑙傚療鍒癗ew Generation錛圗den Space錛孎rom Space錛孴o Space錛?tenured generation,Perm Generation鐨勫唴瀛樹(shù)嬌鐢ㄦ儏鍐?br />杈撳嚭鍐呭錛?br />

jmap -histo 2083 锝?jmap -histo:live 2083
鍙互瑙傚療heap涓墍鏈夊璞$殑鎯呭喌錛坔eap涓墍鏈夌敓瀛樼殑瀵硅薄鐨勬儏鍐碉級(jí)銆傚寘鎷璞℃暟閲忓拰鎵鍗犵┖闂村ぇ灝忋?br />杈撳嚭鍐呭錛?br />
鍐欎釜鑴氭湰錛屽彲浠ュ緢蹇妸鍗犵敤heap鏈澶х殑瀵硅薄鎵懼嚭鏉ワ紝瀵逛粯鍐呭瓨娉勬紡鐗瑰埆鏈夋晥銆?br />
jstat
鏈鍚庤閲嶇偣浠嬬粛涓嬭繖涓懡浠ゃ?br />榪欐槸jdk鍛戒護(hù)涓瘮杈冮噸瑕侊紝涔熸槸鐩稿綋瀹炵敤鐨勪竴涓懡浠わ紝鍙互瑙傚療鍒癱lassloader錛宑ompiler錛実c鐩稿叧淇℃伅
鍏蜂綋鍙傛暟濡備笅錛?br />-class錛氱粺璁lass loader琛屼負(fù)淇℃伅
-compile錛氱粺璁$紪璇戣涓轟俊鎭?br />-gc錛氱粺璁dk gc鏃秇eap淇℃伅
-gccapacity錛氱粺璁′笉鍚岀殑generations錛堜笉鐭ラ亾鎬庝箞緲昏瘧濂斤紝鍖呮嫭鏂扮敓鍖猴紝鑰佸勾鍖猴紝permanent鍖猴級(jí)鐩稿簲鐨刪eap瀹歸噺鎯呭喌
-gccause錛氱粺璁c鐨勬儏鍐碉紝錛堝悓-gcutil錛夊拰寮曡搗gc鐨勪簨浠?br />-gcnew錛氱粺璁c鏃訛紝鏂扮敓浠g殑鎯呭喌
-gcnewcapacity錛氱粺璁c鏃訛紝鏂扮敓浠eap瀹歸噺
-gcold錛氱粺璁c鏃訛紝鑰佸勾鍖虹殑鎯呭喌
-gcoldcapacity錛氱粺璁c鏃訛紝鑰佸勾鍖篽eap瀹歸噺
-gcpermcapacity錛氱粺璁c鏃訛紝permanent鍖篽eap瀹歸噺
-gcutil錛氱粺璁c鏃訛紝heap鎯呭喌
-printcompilation錛氫笉鐭ラ亾騫蹭粈涔堢殑錛屼竴鐩存病鐢ㄨ繃銆?br />
涓鑸瘮杈冨父鐢ㄧ殑鍑犱釜鍙傛暟鏄細(xì)
jstat -class 2083 1000 10 錛堟瘡闅?縐掔洃鎺т竴嬈★紝涓鍏卞仛10嬈★級(jí)
杈撳嚭鍐呭鍚箟濡備笅錛?br />
LoadedNumber of classes loaded.
BytesNumber of Kbytes loaded.
UnloadedNumber of classes unloaded.
BytesNumber of Kbytes unloaded.
TimeTime spent performing class load and unload operations.








jstat -gc 2083 2000 20錛堟瘡闅?縐掔洃鎺т竴嬈★紝鍏卞仛10錛?br />杈撳嚭鍐呭鍚箟濡備笅錛?br />
S0C Current survivor space 0 capacity (KB).
EC Current eden space capacity (KB).
EU Eden space utilization (KB).
OC Current old space capacity (KB).
OU Old space utilization (KB).
PC Current permanent space capacity (KB).
PU Permanent space utilization (KB).
YGC Number of young generation GC Events.
YGCT Young generation garbage collection time.
FGC Number of full GC events.
FGCT Full garbage collection time.
GCT Total garbage collection time.


















杈撳嚭鍐呭錛?br />

濡傛灉鑳界啛緇冭繍鐢ㄨ繖浜涘懡浠わ紝灝ゅ叾鏄湪linux涓嬶紝閭d箞瀹屽叏鍙互浠f浛jprofile絳夌洃鎺у伐鍏蜂簡(jiǎn)錛岃皝璁╁畠鏀惰垂鍛€傚懙鍛點(diǎn)?br />鐢ㄥ懡浠ょ殑濂藉灝辨槸閫熷害蹇紝騫朵笖杈呭姪浜庡叾浠栧懡浠わ紝姣斿grep gawk sed絳夛紝鍙互緇勮澶氱絎﹀悎鑷繁闇姹傜殑宸ュ叿銆?

]]>
Dbutils 璇﹁Вhttp://m.tkk7.com/b47248054/articles/326712.html錛堝寳浜級(jí)鏈ㄦ湪錛堝寳浜級(jí)鏈ㄦ湪Wed, 21 Jul 2010 02:55:00 GMThttp://m.tkk7.com/b47248054/articles/326712.htmlhttp://m.tkk7.com/b47248054/comments/326712.htmlhttp://m.tkk7.com/b47248054/articles/326712.html#Feedback1http://m.tkk7.com/b47248054/comments/commentRss/326712.htmlhttp://m.tkk7.com/b47248054/services/trackbacks/326712.html闃呰鍏ㄦ枃

]]>
JAVA鍩虹鐭ヨ瘑綺懼崕鎬葷粨http://m.tkk7.com/b47248054/articles/324556.html錛堝寳浜級(jí)鏈ㄦ湪錛堝寳浜級(jí)鏈ㄦ湪Sat, 26 Jun 2010 07:04:00 GMThttp://m.tkk7.com/b47248054/articles/324556.htmlhttp://m.tkk7.com/b47248054/comments/324556.htmlhttp://m.tkk7.com/b47248054/articles/324556.html#Feedback0http://m.tkk7.com/b47248054/comments/commentRss/324556.htmlhttp://m.tkk7.com/b47248054/services/trackbacks/324556.html 聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)1銆佸璞$殑鍒濆鍖?/font>

銆銆(1)闈為潤(rùn)鎬佸璞$殑鍒濆鍖?/p>

銆銆鍦ㄥ垱寤哄璞℃椂錛屽璞℃墍鍦ㄧ被鐨勬墍鏈夋暟鎹垚鍛樹(shù)細(xì)棣栧厛榪涜鍒濆鍖栥?/p>

銆銆鍩烘湰綾誨瀷錛?a class="bluekey" target="_blank">int鍨嬶紝鍒濆鍖栦負(fù)0銆?/p>

銆銆濡傛灉涓哄璞★細(xì)榪欎簺瀵硅薄浼?xì)鎸墮搴搴忓垵濮嬪寲銆?/p>

銆銆鈥誨湪鎵鏈夌被鎴愬憳鍒濆鍖栧畬鎴愪箣鍚庯紝鎵嶈皟鐢ㄦ湰綾葷殑鏋勯犳柟娉曞垱寤哄璞°?/p>

銆銆鏋勯犳柟娉曠殑浣滅敤灝辨槸鍒濆鍖栥?/p>

銆銆(2)闈?rùn)鎬佸璞$殑鍒濆鍖?/p>

銆銆紼嬪簭涓富綾葷殑闈?rùn)鎬佸彉閲忎細(xì)鍦╩ain鏂規(guī)硶鎵ц鍓嶅垵濮嬪寲銆?/p>

銆銆涓嶄粎絎竴嬈″垱寤哄璞℃椂錛岀被涓殑鎵鏈夐潤(rùn)鎬佸彉閲忛兘鍒濆鍖栵紝騫朵笖絎竴嬈¤闂煇綾?娉ㄦ剰姝ゆ椂鏈垱寤烘綾誨璞?鐨勯潤(rùn)鎬佸璞℃椂錛屾墍鏈夌殑闈?rùn)鎬佸彉閲忎篃瑕佹寜瀹冧滑鍦ㄧ被涓殑欏哄簭鍒濆鍖栥?/p>

銆2銆佺戶(hù)鎵挎椂錛屽璞$殑鍒濆鍖栬繃紼?

銆銆(1)涓葷被鐨勮秴綾葷敱楂樺埌浣庢寜欏哄簭鍒濆鍖栭潤(rùn)鎬佹垚鍛橈紝鏃犺闈?rùn)鎬佹垚鍛樻槸鍚︿負(fù)private銆?/p>

銆銆(2)涓葷被闈?rùn)鎬佹垚鍛樼殑鍒濆鍖栥?/p>

銆銆(3)涓葷被鐨勮秴綾葷敱楂樺埌浣庤繘琛岄粯璁ゆ瀯閫犳柟娉曠殑璋冪敤銆傛敞鎰忥紝鍦ㄨ皟鐢ㄦ瘡涓涓秴綾葷殑榛樿鏋勯犳柟娉曞墠錛屽厛榪涜瀵規(guī)瓚呯被榪涜闈為潤(rùn)鎬佸璞$殑鍒濆鍖栥?/p>

銆銆(4)涓葷被闈為潤(rùn)鎬佹垚鍛樼殑鍒濆鍖栥?/p>

銆銆(5)璋冪敤涓葷被鐨勬瀯閫犳柟娉曘?/p>

銆銆3銆佸叧浜庢瀯閫犳柟娉?/font>

銆銆(1)綾誨彲浠ユ病鏈夋瀯閫犳柟娉曪紝浣嗗鏋滄湁澶氫釜鏋勯犳柟娉曪紝灝卞簲璇ヨ鏈夐粯璁ょ殑鏋勯犳柟娉曪紝鍚﹀垯鍦ㄧ戶(hù)鎵挎綾繪椂錛岄渶瑕佸湪瀛愮被涓樉寮忚皟鐢ㄧ埗綾葷殑鏌愪竴涓潪榛樿鐨勬瀯閫犳柟娉曚簡(jiǎn)銆?/p>

銆銆(2)鍦ㄤ竴涓瀯閫犳柟娉曚腑錛屽彧鑳借皟鐢ㄤ竴嬈″叾浠栫殑鏋勯犳柟娉曪紝騫朵笖璋冪敤鏋勯犳柟娉曠殑璇彞蹇呴』鏄涓鏉¤鍙ャ?/p>

銆銆4銆佹湁鍏硃ublic銆乸rivate鍜宲rotected

銆銆(1)鏃爌ublic淇グ鐨勭被錛屽彲浠ヨ鍏朵粬綾昏闂殑鏉′歡鏄細(xì)a.涓や釜綾誨湪鍚屼竴鏂囦歡涓紝b.涓や釜綾誨湪鍚屼竴鏂囦歡澶逛腑錛宑.涓や釜綾誨湪鍚屼竴杞歡鍖呬腑銆?/p>

銆銆(2)protected錛氱戶(hù)鎵跨被鍜屽悓涓杞歡鍖呯殑綾誨彲璁塊棶銆?/p>

銆銆(3)濡傛灉鏋勯犳柟娉曚負(fù)private錛岄偅涔堝湪鍏朵粬綾諱腑涓嶈兘鍒涘緩璇ョ被鐨勫璞°?br />

銆銆5銆佹娊璞$被

銆銆(1)鎶借薄綾諱笉鑳藉垱寤哄璞°?/p>

銆銆(2)濡傛灉涓涓被涓竴涓柟娉曚負(fù)鎶借薄鏂規(guī)硶錛屽垯榪欎釜綾誨繀欏諱負(fù)abstract鎶借薄綾匯?/p>

銆銆(3)緇ф壙鎶借薄綾葷殑綾誨湪綾諱腑蹇呴』瀹炵幇鎶借薄綾諱腑鐨勬娊璞℃柟娉曘?/p>

銆銆(4)鎶借薄綾諱腑鍙互鏈夋娊璞℃柟娉曪紝涔熷彲鏈夐潪鎶借薄鏂規(guī)硶銆傛娊璞℃柟娉曚笉鑳戒負(fù)private銆?/p>

銆銆(5)闂存帴緇ф壙鎶借薄綾葷殑綾誨彲浠ヤ笉緇欏嚭鎶借薄鏂規(guī)硶鐨勫畾涔夈?/p>

銆銆6銆乫inal鍏抽敭瀛?/font>

銆銆(1)涓涓璞℃槸甯擱噺錛屼笉浠h〃涓嶈兘杞彉瀵硅薄鐨勬垚鍛橈紝浠嶅彲浠ュ叾鎴愬憳榪涜鎿嶄綔銆?/p>

銆銆(2)甯擱噺鍦ㄤ嬌鐢ㄥ墠蹇呴』璧嬪鹼紝浣嗛櫎浜?jiǎn)鍦ㄥ0鏄庣殑鍚屾椂鍒濆鍖栧锛尀鍙兘鍦ㄦ瀯閫犳柟娉曚腑鍒濆鍖栥?/p>

銆銆(3)final淇グ鐨勬柟娉曚笉鑳借閲嶇疆(鍦ㄥ瓙綾諱腑涓嶈兘鍑虹幇鍚屽悕鏂規(guī)硶)銆?/p>

銆銆(4)濡傛灉澹版槑涓涓被涓篺inal錛屽垯鎵鏈夌殑鏂規(guī)硶鍧囦負(fù)final錛屾棤璁哄叾鏄惁琚玣inal淇グ錛屼絾鏁版嵁鎴愬憳鍙負(fù)final涔熷彲涓嶆槸銆?/p>

銆銆7銆佹帴鍙?/font>interface(鐢╥mplements鏉ュ疄鐜版帴鍙?

銆銆(1)鎺ュ彛涓殑鎵鏈夋暟鎹潎涓簊tatic鍜宖inal鍗抽潤(rùn)鎬佸父閲忋傚敖綆″彲浠ヤ笉鐢ㄨ繖涓や釜鍏抽敭瀛椾慨楗幫紝浣嗗繀欏葷粰甯擱噺璧嬪垵鍊箋?/p>

銆銆(2)鎺ュ彛涓殑鏂規(guī)硶鍧囦負(fù)public錛屽湪瀹炵幇鎺ュ彛綾諱腑錛屽疄鐜版柟娉曞繀欏誨彲public鍏抽敭瀛椼?/p>

銆銆(3)濡傛灉浣跨敤public鏉ヤ慨楗版帴鍙o紝鍒欐帴鍙e繀欏諱笌鏂囦歡鍚嶇浉鍚屻?/p>

銆銆8銆佸閲嶇戶(hù)鎵?

銆銆(1)涓涓被緇ф壙浜?jiǎn)涓涓被鍜屾帴鍙o紝閭d箞蹇呴』灝嗙被鍐欏湪鍓嶉潰錛屾帴鍙e啓鍦ㄥ悗闈紝鎺ュ彛涔嬮棿鐢ㄩ楀彿鍒嗛殧銆?/p>

銆銆(2)鎺ュ彛涔嬮棿鍙閲嶇戶(hù)鎵匡紝娉ㄦ剰浣跨敤鍏抽敭瀛梕xtends銆?/p>

銆銆(3)涓涓被铏藉彧瀹炵幇浜?jiǎn)涓涓帴鍙o紝浣嗕笉浠呰瀹炵幇榪欎釜鎺ュ彛鐨勬墍鏈夋柟娉曪紝榪樿瀹炵幇榪欎釜鎺ュ彛緇ф壙鐨勬帴鍙g殑鏂規(guī)硶錛屾帴鍙d腑鐨勬墍鏈夋柟娉曞潎欏誨湪綾諱腑瀹炵幇銆?/p>

銆9銆佹帴鍙g殑宓屽叆

銆銆(1)鎺ュ彛宓屽叆綾諱腑錛屽彲浠ヤ嬌鐢╬rivate淇グ銆傛鏃訛紝鎺ュ彛鍙兘鍦ㄦ墍鍦ㄧ殑綾諱腑瀹炵幇錛屽叾浠栫被涓嶈兘璁塊棶銆?/p>

銆銆(2)宓屽叆鎺ュ彛涓殑鎺ュ彛涓瀹氳涓簆ublic銆?

聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)10銆佺被鐨勫祵鍏?/font> 

銆銆(1)綾誨彲浠ュ祵鍏ュ彟涓涓被涓紝浣嗕笉鑳藉祵鍏ユ帴鍙d腑銆?/p>

銆銆}

銆銆(2)鍦ㄩ潤(rùn)鎬佹柟娉曟垨鍏朵粬鏂規(guī)硶涓紝涓嶈兘鐩存帴鍒涘緩鍐呴儴綾誨璞★紝闇閫氳繃鎵嬫鏉ュ彇寰椼?/p>

銆銆鎵嬫鏈変袱縐嶏細(xì)

銆銆class A { class B {} B getB() { B b = new B(); return b; } } static void m() { A a = new A(); A.B ab = a.getB(); // 鎴栬呮槸 A.B ab = a.new B(); }

銆銆(3)涓涓被緇ф壙浜?jiǎn)鍙︿竴涓被鐨勫唴閮ㄧ被錛屽洜涓鴻秴綾繪槸鍐呴儴綾伙紝鑰屽唴閮ㄧ被鐨勬瀯閫犳柟娉曚笉鑳借嚜鍔ㄨ璋冪敤錛岃繖鏍峰氨闇瑕佸湪瀛愮被鐨勬瀯閫犳柟娉曚腑鏄庣‘鐨勮皟鐢ㄨ秴綾葷殑鏋勯犳柟娉曘傛帴涓婁緥錛?/p>

銆銆class C extends A.B { C() { new A().super(); // 榪欎竴鍙ュ氨瀹炵幇浜?jiǎn)瀵瑰唴閮ňc繪瀯閫犳柟娉曠殑璋冪敤銆?} }

銆銆鏋勯犳柟娉曚篃鍙繖鏍峰啓錛?/p>

銆銆C(A a) { a.super(); } // 浣跨敤榪欎釜鏋勯犳柟娉曞垱寤哄璞★紝瑕佸啓鎴怌 c = new C(a); a鏄疉鐨勫璞°?/p>

銆銆11銆佸紓甯哥被JAVA涓櫎浜?jiǎn)RunTimeException綾伙紝鍏朵粬寮傚父鍧囬』鎹曡幏鎴栨姏鍑恒?/p>

]]>
jdk5鐨勬媶綆變笌瑁呯http://m.tkk7.com/b47248054/articles/324536.html錛堝寳浜級(jí)鏈ㄦ湪錛堝寳浜級(jí)鏈ㄦ湪Fri, 25 Jun 2010 17:31:00 GMThttp://m.tkk7.com/b47248054/articles/324536.htmlhttp://m.tkk7.com/b47248054/comments/324536.htmlhttp://m.tkk7.com/b47248054/articles/324536.html#Feedback0http://m.tkk7.com/b47248054/comments/commentRss/324536.htmlhttp://m.tkk7.com/b47248054/services/trackbacks/324536.html渚嬪錛欼nteger i = 1;//瑁呯
int j = i;//鎷嗙

]]>
jdk1.5 Arrays 瀛︿範(fàn)絎旇http://m.tkk7.com/b47248054/articles/324535.html錛堝寳浜級(jí)鏈ㄦ湪錛堝寳浜級(jí)鏈ㄦ湪Fri, 25 Jun 2010 17:26:00 GMThttp://m.tkk7.com/b47248054/articles/324535.htmlhttp://m.tkk7.com/b47248054/comments/324535.htmlhttp://m.tkk7.com/b47248054/articles/324535.html#Feedback0http://m.tkk7.com/b47248054/comments/commentRss/324535.htmlhttp://m.tkk7.com/b47248054/services/trackbacks/324535.html import 聽(tīng)java.util.Arrays;

public 聽(tīng) class 聽(tīng)ArraysTester聽(tīng) {

聽(tīng)聽(tīng)聽(tīng)聽(tīng)
private 聽(tīng) int []聽(tīng)ar;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)
public 聽(tīng)ArraysTester( int 聽(tīng)numValues) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)ar聽(tīng)
= 聽(tīng) new 聽(tīng) int [numValues];
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
for ( int 聽(tīng)i = 0 ;i < ar.length;i ++ ) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)ar[i]聽(tīng)
= 聽(tīng)( 1000 - ( 300 + i));
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)}

聽(tīng)聽(tīng)聽(tīng)聽(tīng)}

聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)
public 聽(tīng) int []聽(tīng)get() {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
return 聽(tīng)ar;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)}

聽(tīng)聽(tīng)聽(tīng)聽(tīng)
/**
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)*聽(tīng)
@param 聽(tīng)args
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
*/

聽(tīng)聽(tīng)聽(tīng)聽(tīng)
public 聽(tīng) static 聽(tīng) void 聽(tīng)main(String[]聽(tīng)args)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
// 聽(tīng)TODO聽(tīng)Auto-generated聽(tīng)method聽(tīng)stub
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)ArraysTester聽(tīng)test聽(tīng) = 聽(tīng) new 聽(tīng)ArraysTester( 50 );
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
int []聽(tīng)myArray聽(tīng) = 聽(tīng)test.get();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
int []聽(tīng)myOtherArray聽(tīng) = 聽(tīng)test.get().clone();
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
if (Arrays.equals(myArray,聽(tīng)myOtherArray)) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)System.out.println(
" 鐩哥瓑 " );
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)}
else {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)System.out.println(
" 涓嶇浉絳?/span> " );
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)}

聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)Arrays.fill(myOtherArray,聽(tīng)
2 , 10 , new 聽(tīng)Double(Math.PI).intValue());
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)myArray[
30 ]聽(tīng) = 聽(tīng) 98 ;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)System.out.println(
" 榪欐槸涓涓湭鎺掑簭鐨勬暟緇?img src="http://m.tkk7.com/images/dot.gif" /> " );
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)System.out.println(Arrays.toString(myArray));
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)Arrays.sort(myArray);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)System.out.println(
" 榪欐槸涓涓帓搴忕殑鏁扮粍 " );
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)System.out.println(Arrays.toString(myArray));
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
int 聽(tīng)index聽(tīng) = 聽(tīng)Arrays.binarySearch(myArray,聽(tīng) 98 );
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)System.out.println(
" 98琚畾浣嶅湪絎?/span> " + index + " 涓綅緗笂 " );
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)String[][]聽(tīng)ticTacToe聽(tīng)
= 聽(tīng) { { " X " , " 0 " , " 0 " } , { " 0 " , " X " , " X " } , { " X " , " 0 " , " X " } } ;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)System.out.println(Arrays.deepToString(ticTacToe));
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)String[][]聽(tīng)ticTacToe2聽(tīng)
= 聽(tīng) { { " 0 " , " 0 " , " X " } , { " 0 " , " X " , " X " } , { " X " , " 0 " , " X " } } ;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)String[][]聽(tīng)ticTacToe3聽(tīng)
= 聽(tīng) { { " X " , " 0 " , " 0 " } , { " 0 " , " X " , " X " } , { " X " , " 0 " , " X " } } ;
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
if (Arrays.deepEquals(ticTacToe,聽(tīng)ticTacToe2)) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)System.out.println(
" 鐩哥瓑 " );
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)}
else {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)System.out.println(
" 涓嶇浉絳?/span> " );
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)}

聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
if (Arrays.deepEquals(ticTacToe,聽(tīng)ticTacToe3)) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)System.out.println(
" 鐩哥瓑 " );
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)}
else {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)System.out.println(
" 涓嶇浉絳?/span> " );
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)}

聽(tīng)聽(tīng)聽(tīng)聽(tīng)}


}

Arrays.equals(myArray, myOtherArray)---鐩存帴姣旇緝涓や釜鏁扮粍鏄惁鐩哥瓑
Arrays.fill(a, val)---灝嗘暟緇刟涓墍鏈夊厓绱犻兘鐢╲al鏉ュ~鍏?br />Arrays.fill(a, 2,10,val);---灝嗘暟緇刟錛屼粠绱㈠紩涓?鐨勫厓绱犲埌絎?0鐨勫厓绱犵敤val鏉ュ~鍏?br />Arrays.sort(a);---鎸夌収鑷劧瑙勫緥鎺掑簭錛屽崌搴?br />Arrays.binarySearch(myArray, 98);---鎼滅儲(chǔ)myArray涓間負(fù)98鐨勭儲(chǔ)寮曞彿錛屽茍榪斿洖绱㈠紩
Arrays.toString(a)--鎵撳嵃鏁扮粍a鏍煎紡錛歔2asdf, 3asd, afas]
Arrays.deepToString(ticTacToe)--鎵撳嵃澶氱淮鏁扮粍ticTacToe
Arrays.deepEquals(ticTacToe, ticTacToe2)---姣旇緝涓や釜澶氱淮鏁扮粍
List<String> d = Arrays.asList(a);---灝嗘暟緇勮漿鎹負(fù)List

]]>
[杞琞Struts2 濡備綍鍦?jdk 1.4涓嬭繍琛?/title><link>http://m.tkk7.com/b47248054/articles/304799.html</link><dc:creator>錛堝寳浜級(jí)鏈ㄦ湪</dc:creator><author>錛堝寳浜級(jí)鏈ㄦ湪</author><pubDate>Fri, 04 Dec 2009 09:15:00 GMT</pubDate><guid>http://m.tkk7.com/b47248054/articles/304799.html</guid><wfw:comment>http://m.tkk7.com/b47248054/comments/304799.html</wfw:comment><comments>http://m.tkk7.com/b47248054/articles/304799.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/b47248054/comments/commentRss/304799.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/b47248054/services/trackbacks/304799.html</trackback:ping><description><![CDATA[ <div id="sgiu0uu" class="postcontent"> <p>鍘熸枃鍦板潃錛?a id="viewpost1_TitleUrl" href="/hill/archive/2009/06/12/281852.html" target="_blank"><font color="#808080">Struts2 濡備綍鍦?jdk 1.4涓嬭繍琛?/font></a><br />棣栧厛璁蹭竴涓婼truts2鐨勬爣鍑嗗紑鍙戠幆澧冿細(xì)<br />1.Servlet API 2.4<br />2.JSP API 2.0<br />3.Java 5<br />(榪樼畻鏄瘮杈冩爣鍑嗗惂錛熷懙鍛?<br />浣嗘槸錛屽湪鏌愪簺鎯呭喌涓嬩綘寰椾嬌鐢↗DK1.4鏉ュ紑鍙?姣斿鎴戝弬涓庣殑欏圭洰)錛屽緢鏄劇劧涓嶇鍚圝ava 5鐨勮繖涓爣鍑嗭紝鎬庝箞鍔烇紵涓嶈鎱岋紝Struts2鐨勫紑鍙戜漢鍛樺凡緇忔兂鍒頒簡(jiǎn)銆傚厛璁蹭竴涓媠truts2鐨勫寘鐨勭洰褰曠粨鏋勫惂錛岃В鍘媠truts2鐨剒ip鍖?鎴戣繖閲屾槸 struts-2.0.1-all.zip鍖咃紝瀹樼綉涓嬬殑)錛屼細(xì)鏈夊涓嬪嚑涓洰褰曞拰鏂囦歡錛?br /><br />apps錛氶噷闈竴浜泈ar鏂囦歡錛屽簲璇ユ槸涓浜涚敤struts2寮鍙戠殑涓浜涗緥瀛愶紝鎴戞病璺戣繃錛岀寽寰椼?br />docs錛氬寘鍚簡(jiǎn)API銆丗AQs絳夌瓑鏂囦歡錛屾墦寮docs鏇寸洰褰曚笅闈㈢殑index.jsp鑷繁鎱㈡參嫻忚鍚с?br />j4錛?涓浜?jar鏂囦歡鍜屽叾浠栨枃妗f枃浠躲?br />lib錛?寰堟樉鐒舵槸struts2鎻愪緵鐨勬爣鍑嗙殑鎺ュ彛鏂囦歡銆?br />src錛?struts2鐨勬簮浠g爜銆?br />LICENSE.txt錛氫笉瑙i噴錛?br />NOTICE.txt錛?涓嶈В閲婏紒<br /><br />濂戒簡(jiǎn)錛宻truts2鐨勫寘緇撴瀯瑙i噴灝辮繖鏍鳳紝濡傛灉浣犳槸浣跨敤鏍囧噯鐨勫紑鍙戠幆澧?鏂囩珷澶磋榪囩殑)錛岄偅涔堜綘鍙渶瑕佸皢lib鐩綍涓嬮潰鐨勬枃浠跺叏閮╟opy鍒頒綘鐨刲ib鐩綍涓嬪氨琛屼簡(jiǎn)銆?br />鎴戣浣跨敤JDK1.4鐨勫紑鍙戠幆澧冩庝箞鍔烇紵閭d箞灝變嬌鐢↗4鐩綍涓殑涓滆タ鍟︼紒<br /><br />鍦↗4鐩綍涓?宸茬粡灝哠truts2鍩烘湰鐨勪袱涓猨ar鏂囦歡杞ソ浜?鍒嗗埆鏄痵truts2-core-j4-2.0.1.jar鍜寈work-j4-2.0-beta-1.jar銆?br /><br />鐢ㄨ繖涓や釜鍖呮浛鎹㈡帀lib閲岄潰鐨剆truts2-core-2.0.1.jar鍜寈work-2.0-beta-1.jar涓や釜鍖呭氨琛屼簡(jiǎn)錛屽鏋滀綘鐨勭▼搴忎腑榪樼敤鍒扮殑鍏朵粬鐨刯ar鍖?鍙互閫氳繃鑴氭湰鎶妀ar鍖呰漿鎴怞4鐗堟湰鐨勶紝姣斿錛?br />java -jar retrotranslator-transformer-1.2.2.jar -advanced -srcjar ../lib/<鍚嶅瓧1>.jar -destjar <鍚嶅瓧1>.jar<br />鍙互灝嗗畠浠啓鍒頒竴涓狟at鏂囦歡涓?濡傛灉浣犵敤鐨勬槸Windows鐨勭郴緇熺殑璇?br /><br />鑷蟲(chóng),浣犵殑紼嬪簭搴旇灝卞彲浠ュ湪JDK1.4涓婅繍琛屼簡(jiǎn).<br /><br />鐢↗DK1.4寮鍙戦渶瑕佺殑鍑犱釜鍩烘湰jar鍖呭涓嬶細(xì)</p> <div style="TEXT-ALIGN: center">struts2-core-j4-2.0.1.jar<J4鏂囦歡澶?gt;</div> <p style="TEXT-ALIGN: center">xwork-j4-2.0-beta-1.jar<J4鏂囦歡澶?gt;</p> <p style="TEXT-ALIGN: center">retrotranslator-runtime-1.0.8.jar<J4鏂囦歡澶?gt;</p> <p style="TEXT-ALIGN: center">retrotranslator-transformer-1.0.8.jar<J4鏂囦歡澶?gt;</p> <p style="TEXT-ALIGN: center">freemarker-2.3.4.jar<lib鏂囦歡澶?gt;</p> <p style="TEXT-ALIGN: center">commons-logging-1.0.4.jar<lib鏂囦歡澶?gt;</p> <p style="TEXT-ALIGN: center">backport-util-concurrent.jar<J4鏂囦歡澶?gt;聽(tīng)聽(tīng) 聽(tīng)聽(tīng) </p> <p style="TEXT-ALIGN: center">ognl-2.6.7.jar<lib鏂囦歡澶?gt;</p> <p style="TEXT-ALIGN: center" align="left">struts2-api-j4-2.0.1.jar<J4鏂囦歡澶?gt;<br /><span style="COLOR: #ff0000"><strong>娉ㄦ剰錛氬湪jdk1.4涓嬭繍琛屾椂錛屼笉瑕佸鍔爅ar鍖呫俿truts2-core,xwork榪欎袱涓漿鎹㈡垚jdk1.4涓嬬殑鐗堟湰鍚庯紝鍒殑涓嶄細(xì)鍐嶈漿浜?jiǎn)銆傚鏋滀嬌鐢ㄥ埆鐨勫寘鏃訛紝杞竴涓姞涓涓瘯璇曪紝struts2鍦ㄥ姞鍏ar鍖呮椂錛屽彲鑳芥湁闂錛屼嬌鐢ㄦ椂灝忓績(jī)銆?/strong></span></p> <br /> <br /> <p>寮蹇?jī)杩囧ソ姣忎竴澶┿傘傘傘傘?/p> </div> <img src ="http://m.tkk7.com/b47248054/aggbug/304799.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/b47248054/" target="_blank">錛堝寳浜級(jí)鏈ㄦ湪</a> 2009-12-04 17:15 <a href="http://m.tkk7.com/b47248054/articles/304799.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>tomcat porgram with many error in linux but it's fine in windows http://m.tkk7.com/b47248054/articles/221900.html錛堝寳浜級(jí)鏈ㄦ湪錛堝寳浜級(jí)鏈ㄦ湪Thu, 14 Aug 2008 02:27:00 GMThttp://m.tkk7.com/b47248054/articles/221900.htmlhttp://m.tkk7.com/b47248054/comments/221900.htmlhttp://m.tkk7.com/b47248054/articles/221900.html#Feedback1http://m.tkk7.com/b47248054/comments/commentRss/221900.htmlhttp://m.tkk7.com/b47248054/services/trackbacks/221900.html-------------PathMgr.init()---------------get realpath from servletContext o...  闃呰鍏ㄦ枃

]]>
javascript+java鎴彇鍥懼儚錛屽浘鍍忓鐞?/title><link>http://m.tkk7.com/b47248054/articles/200685.html</link><dc:creator>錛堝寳浜級(jí)鏈ㄦ湪</dc:creator><author>錛堝寳浜級(jí)鏈ㄦ湪</author><pubDate>Thu, 15 May 2008 09:15:00 GMT</pubDate><guid>http://m.tkk7.com/b47248054/articles/200685.html</guid><wfw:comment>http://m.tkk7.com/b47248054/comments/200685.html</wfw:comment><comments>http://m.tkk7.com/b47248054/articles/200685.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/b47248054/comments/commentRss/200685.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/b47248054/services/trackbacks/200685.html</trackback:ping><description><![CDATA[     鎽樿: 寰堝緗戠珯閮藉笇鏈涚敤鎴蜂笂浼犵殑澶村儚涓嶅彉褰紝鍚屾椂鍙堜笉甯屾湜鐢卞叕鍙哥紪杈戞潵榪涜澶村儚鐨勫鐞嗭紱 涓嬮潰榪欎釜紼嬪簭浼?xì)璁╀綘鐪煎墠涓浜紱javascript+java瀹炵幇鐢ㄦ埛涓婁紶澶村儚騫朵笖鍙寜鐓ц瀹氬ご鍍忛暱瀹芥瘮渚嬫埅鍥撅紱 鏂囦歡1錛歩ndex.htm  (涓婁紶鏂囦歡欏甸潰錛?<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0&nb...  <a href='http://m.tkk7.com/b47248054/articles/200685.html'>闃呰鍏ㄦ枃</a><img src ="http://m.tkk7.com/b47248054/aggbug/200685.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/b47248054/" target="_blank">錛堝寳浜級(jí)鏈ㄦ湪</a> 2008-05-15 17:15 <a href="http://m.tkk7.com/b47248054/articles/200685.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>tomcat榪炴帴鏁版嵁搴擄紙SQL2000錛?/title><link>http://m.tkk7.com/b47248054/articles/195992.html</link><dc:creator>錛堝寳浜級(jí)鏈ㄦ湪</dc:creator><author>錛堝寳浜級(jí)鏈ㄦ湪</author><pubDate>Fri, 25 Apr 2008 07:35:00 GMT</pubDate><guid>http://m.tkk7.com/b47248054/articles/195992.html</guid><wfw:comment>http://m.tkk7.com/b47248054/comments/195992.html</wfw:comment><comments>http://m.tkk7.com/b47248054/articles/195992.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/b47248054/comments/commentRss/195992.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/b47248054/services/trackbacks/195992.html</trackback:ping><description><![CDATA[<p>鏂板緩宸ョ▼testmydb錛?br /> 鍦?tomcat\conf\Catalina\localhost涓嬪緩绔媡estmydb.xml<br /> </p> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><span style="color: #0000ff"><?</span><span style="color: #ff00ff">xml version="1.0" encoding="UTF-8"</span><span style="color: #0000ff">?></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #0000ff"><</span><span style="color: #800000">Context</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />        </span><span style="color: #0000ff"><</span><span style="color: #800000">Resource </span><span style="color: #ff0000">name</span><span style="color: #0000ff">="jdbc/testmydb"</span><span style="color: #ff0000"> type</span><span style="color: #0000ff">="javax.sql.DataSource"</span><span style="color: #ff0000"> <br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />        password</span><span style="color: #0000ff">="******"</span><span style="color: #ff0000"> <br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />        driverClassName</span><span style="color: #0000ff">="com.microsoft.jdbc.sqlserver.SQLServerDriver"</span><span style="color: #ff0000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />        maxIdle</span><span style="color: #0000ff">="2"</span><span style="color: #ff0000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />        maxWait</span><span style="color: #0000ff">="5000"</span><span style="color: #ff0000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />        username</span><span style="color: #0000ff">="babyuser"</span><span style="color: #ff0000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />        url</span><span style="color: #0000ff">="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=bbs"</span><span style="color: #ff0000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />        maxActive</span><span style="color: #0000ff">="4"</span><span style="color: #0000ff">/></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #0000ff"></</span><span style="color: #800000">Context</span><span style="color: #0000ff">></span></div> 鍦?tomcat\webapps\testmydb\WEB-INF\涓嬫柊寤簑eb.xml<br /> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><span style="color: #0000ff"><?</span><span style="color: #ff00ff">xml version="1.0" encoding="ISO-8859-1"</span><span style="color: #0000ff">?></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #008000"><!--</span><span style="color: #008000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />  Licensed to the Apache Software Foundation (ASF) under one or more<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />  contributor license agreements.  See the NOTICE file distributed with<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />  this work for additional information regarding copyright ownership.<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />  The ASF licenses this file to You under the Apache License, Version 2.0<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />  (the "License"); you may not use this file except in compliance with<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />  the License.  You may obtain a copy of the License at<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />      http://www.apache.org/licenses/LICENSE-2.0<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />  Unless required by applicable law or agreed to in writing, software<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />  distributed under the License is distributed on an "AS IS" BASIS,<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />  See the License for the specific language governing permissions and<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />  limitations under the License.<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #008000">--></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #0000ff"><</span><span style="color: #800000">web-app </span><span style="color: #ff0000">xmlns</span><span style="color: #0000ff">="http://java.sun.com/xml/ns/j2ee"</span><span style="color: #ff0000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />    xmlns:xsi</span><span style="color: #0000ff">="http://www.w3.org/2001/XMLSchema-instance"</span><span style="color: #ff0000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />    xsi:schemaLocation</span><span style="color: #0000ff">="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"</span><span style="color: #ff0000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />    version</span><span style="color: #0000ff">="2.4"</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />  </span><span style="color: #0000ff"><</span><span style="color: #800000">display-name</span><span style="color: #0000ff">></span><span style="color: #000000">Tomcat Documentation</span><span style="color: #0000ff"></</span><span style="color: #800000">display-name</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />  </span><span style="color: #0000ff"><</span><span style="color: #800000">description</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />     Tomcat Documentation.<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />  </span><span style="color: #0000ff"></</span><span style="color: #800000">description</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />    </span><span style="color: #0000ff"><</span><span style="color: #800000">resource-ref</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />    </span><span style="color: #0000ff"><</span><span style="color: #800000">description</span><span style="color: #0000ff">></span><span style="color: #000000">sqlserverDB Connection</span><span style="color: #0000ff"></</span><span style="color: #800000">description</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />    </span><span style="color: #0000ff"><</span><span style="color: #800000">res-ref-name</span><span style="color: #0000ff">></span><span style="color: #000000">jdbc/testmydb</span><span style="color: #0000ff"></</span><span style="color: #800000">res-ref-name</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />    </span><span style="color: #0000ff"><</span><span style="color: #800000">res-type</span><span style="color: #0000ff">></span><span style="color: #000000">javax.sql.DataSource</span><span style="color: #0000ff"></</span><span style="color: #800000">res-type</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />    </span><span style="color: #0000ff"><</span><span style="color: #800000">res-auth</span><span style="color: #0000ff">></span><span style="color: #000000">Container</span><span style="color: #0000ff"></</span><span style="color: #800000">res-auth</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" />    </span><span style="color: #0000ff"></</span><span style="color: #800000">resource-ref</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #0000ff"></</span><span style="color: #800000">web-app</span><span style="color: #0000ff">></span></div> 鍦?tomcat\webapps\quickstart\鐩綍涓嬫柊寤篿ndex.jsp鏂囦歡<br /> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img id="Codehighlighter1_2_46_Open_Image" onclick="this.style.display='none'; Codehighlighter1_2_46_Open_Text.style.display='none'; Codehighlighter1_2_46_Closed_Image.style.display='inline'; Codehighlighter1_2_46_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_2_46_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_2_46_Closed_Text.style.display='none'; Codehighlighter1_2_46_Open_Image.style.display='inline'; Codehighlighter1_2_46_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedBlock.gif" align="top" alt="" /><span style="color: #000000; background-color: #ffff00"><%</span><span id="Codehighlighter1_2_46_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_2_46_Open_Text"><span style="color: #000000; background-color: #f5f5f5">@ page contentType</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">text/html;charset=gb2312</span><span style="color: #000000; background-color: #f5f5f5">"</span></span><span style="color: #000000; background-color: #ffff00">%></span><span style="color: #000000">   <br /> <img id="Codehighlighter1_55_80_Open_Image" onclick="this.style.display='none'; Codehighlighter1_55_80_Open_Text.style.display='none'; Codehighlighter1_55_80_Closed_Image.style.display='inline'; Codehighlighter1_55_80_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_55_80_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_55_80_Closed_Text.style.display='none'; Codehighlighter1_55_80_Open_Image.style.display='inline'; Codehighlighter1_55_80_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedBlock.gif" align="top" alt="" /></span><span style="color: #000000; background-color: #ffff00"><%</span><span id="Codehighlighter1_55_80_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_55_80_Open_Text"><span style="color: #000000; background-color: #f5f5f5">@ page import</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">java.sql.*</span><span style="color: #000000; background-color: #f5f5f5">"</span></span><span style="color: #000000; background-color: #ffff00">%></span><span style="color: #000000"> <br /> <img id="Codehighlighter1_87_117_Open_Image" onclick="this.style.display='none'; Codehighlighter1_87_117_Open_Text.style.display='none'; Codehighlighter1_87_117_Closed_Image.style.display='inline'; Codehighlighter1_87_117_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_87_117_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_87_117_Closed_Text.style.display='none'; Codehighlighter1_87_117_Open_Image.style.display='inline'; Codehighlighter1_87_117_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedBlock.gif" align="top" alt="" /></span><span style="color: #000000; background-color: #ffff00"><%</span><span id="Codehighlighter1_87_117_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_87_117_Open_Text"><span style="color: #000000; background-color: #f5f5f5">@ page import</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">javax.naming.*</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"> </span></span><span style="color: #000000; background-color: #ffff00">%></span><span style="color: #000000"><br /> <img id="Codehighlighter1_123_150_Open_Image" onclick="this.style.display='none'; Codehighlighter1_123_150_Open_Text.style.display='none'; Codehighlighter1_123_150_Closed_Image.style.display='inline'; Codehighlighter1_123_150_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_123_150_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_123_150_Closed_Text.style.display='none'; Codehighlighter1_123_150_Open_Image.style.display='inline'; Codehighlighter1_123_150_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedBlock.gif" align="top" alt="" /></span><span style="color: #000000; background-color: #ffff00"><%</span><span id="Codehighlighter1_123_150_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_123_150_Open_Text"><span style="color: #000000; background-color: #f5f5f5">@ page import</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">javax.sql.*</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"> </span></span><span style="color: #000000; background-color: #ffff00">%></span><span style="color: #000000"><br /> <img id="Codehighlighter1_156_348_Open_Image" onclick="this.style.display='none'; Codehighlighter1_156_348_Open_Text.style.display='none'; Codehighlighter1_156_348_Closed_Image.style.display='inline'; Codehighlighter1_156_348_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_156_348_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_156_348_Closed_Text.style.display='none'; Codehighlighter1_156_348_Open_Image.style.display='inline'; Codehighlighter1_156_348_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedBlock.gif" align="top" alt="" /></span><span style="color: #000000; background-color: #ffff00"><%</span><span id="Codehighlighter1_156_348_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_156_348_Open_Text"><span style="color: #000000; background-color: #f5f5f5">!<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" /></span><span style="color: #0000ff; background-color: #f5f5f5">public</span><span style="color: #000000; background-color: #f5f5f5"> static </span><span style="color: #0000ff; background-color: #f5f5f5">String</span><span style="color: #000000; background-color: #f5f5f5"> getGBString(</span><span style="color: #0000ff; background-color: #f5f5f5">String</span><span style="color: #000000; background-color: #f5f5f5"> src) {<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />        try {<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />            return </span><span style="color: #0000ff; background-color: #f5f5f5">new</span><span style="color: #000000; background-color: #f5f5f5"> </span><span style="color: #0000ff; background-color: #f5f5f5">String</span><span style="color: #000000; background-color: #f5f5f5">(src.getBytes(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">ISO-8859-1</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">), </span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">gb2312</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />        } catch (java.io.UnsupportedEncodingException e) {<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />            return </span><span style="color: #0000ff; background-color: #f5f5f5">null</span><span style="color: #000000; background-color: #f5f5f5">;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />        }<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" alt="" />    }<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span></span><span style="color: #000000; background-color: #ffff00">%></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #0000ff"><</span><span style="color: #800000">html</span><span style="color: #0000ff">><</span><span style="color: #800000">head</span><span style="color: #0000ff">><</span><span style="color: #800000">title</span><span style="color: #0000ff">></span><span style="color: #000000">JDBC Test</span><span style="color: #0000ff"></</span><span style="color: #800000">title</span><span style="color: #0000ff">></</span><span style="color: #800000">head</span><span style="color: #0000ff">><</span><span style="color: #800000">body</span><span style="color: #0000ff">></span><span style="color: #000000"><br /> <img id="Codehighlighter1_404_1404_Open_Image" onclick="this.style.display='none'; Codehighlighter1_404_1404_Open_Text.style.display='none'; Codehighlighter1_404_1404_Closed_Image.style.display='inline'; Codehighlighter1_404_1404_Closed_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" alt="" /><img id="Codehighlighter1_404_1404_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_404_1404_Closed_Text.style.display='none'; Codehighlighter1_404_1404_Open_Image.style.display='inline'; Codehighlighter1_404_1404_Open_Text.style.display='inline';" src="http://m.tkk7.com/images/OutliningIndicators/ContractedBlock.gif" align="top" alt="" /></span><span style="color: #000000; background-color: #ffff00"><%</span><span id="Codehighlighter1_404_1404_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://m.tkk7.com/Images/dot.gif" alt="" /></span><span id="Codehighlighter1_404_1404_Open_Text"><span style="color: #000000; background-color: #f5f5f5"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />Connection conn</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #0000ff; background-color: #f5f5f5">null</span><span style="color: #000000; background-color: #f5f5f5">;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />Statement stmt</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #0000ff; background-color: #f5f5f5">null</span><span style="color: #000000; background-color: #f5f5f5">;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />ResultSet rs</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #0000ff; background-color: #f5f5f5">null</span><span style="color: #000000; background-color: #f5f5f5">;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />ResultSetMetaData md</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #0000ff; background-color: #f5f5f5">null</span><span style="color: #000000; background-color: #f5f5f5">;<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />try<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />{Context initCtx</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #0000ff; background-color: #f5f5f5">new</span><span style="color: #000000; background-color: #f5f5f5"> InitialContext();<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />DataSource ds</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #000000; background-color: #f5f5f5">(DataSource)initCtx.lookup(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">java:comp/env/jdbc/quickstart</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" /></span><span style="color: #0000ff; background-color: #f5f5f5">if</span><span style="color: #000000; background-color: #f5f5f5">(ds!</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #0000ff; background-color: #f5f5f5">null</span><span style="color: #000000; background-color: #f5f5f5">)<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />out.println(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">宸茬粡鑾峰緱DataSource</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" /></span><span style="color: #000000; background-color: #f5f5f5">//</span><span style="color: #000000; background-color: #f5f5f5">out.println(ds.toString());<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />conn</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #000000; background-color: #f5f5f5">ds.getConnection();<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />stmt</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #000000; background-color: #f5f5f5">conn.createStatement();<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />out.println(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">aa</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />rs</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #000000; background-color: #f5f5f5">stmt.executeQuery(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">SELECT TOP 5 * FROM Dv_Topic WHERE (Boardid = 37) AND (istop = 1)</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />md</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #000000; background-color: #f5f5f5">rs.getMetaData();<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />out.println(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"><table border=1></span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />out.println(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"><tr></span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" /></span><span style="color: #0000ff; background-color: #f5f5f5">for</span><span style="color: #000000; background-color: #f5f5f5">(</span><span style="color: #0000ff; background-color: #f5f5f5">int</span><span style="color: #000000; background-color: #f5f5f5"> i</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #000000; background-color: #f5f5f5">0</span><span style="color: #000000; background-color: #f5f5f5">;i</span><span style="color: #000000; background-color: #f5f5f5"><</span><span style="color: #000000; background-color: #f5f5f5">md.getColumnCount();i</span><span style="color: #000000; background-color: #f5f5f5">++</span><span style="color: #000000; background-color: #f5f5f5">)<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />out.println(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"><td></span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">+</span><span style="color: #000000; background-color: #f5f5f5">md.getColumnName(i</span><span style="color: #000000; background-color: #f5f5f5">+</span><span style="color: #000000; background-color: #f5f5f5">1</span><span style="color: #000000; background-color: #f5f5f5">)</span><span style="color: #000000; background-color: #f5f5f5">+</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"></td></span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />}<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" /></span><span style="color: #0000ff; background-color: #f5f5f5">while</span><span style="color: #000000; background-color: #f5f5f5">(rs.next())<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />out.println(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"><tr></span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />out.println(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"><td></span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">+</span><span style="color: #000000; background-color: #f5f5f5">rs.getString(</span><span style="color: #000000; background-color: #f5f5f5">1</span><span style="color: #000000; background-color: #f5f5f5">)</span><span style="color: #000000; background-color: #f5f5f5">+</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"></td></span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />out.println(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"><td></span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">+</span><span style="color: #000000; background-color: #f5f5f5">getGBString(rs.getString(</span><span style="color: #000000; background-color: #f5f5f5">2</span><span style="color: #000000; background-color: #f5f5f5">))</span><span style="color: #000000; background-color: #f5f5f5">+</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"></td></span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />out.println(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"><td></span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">+</span><span style="color: #000000; background-color: #f5f5f5">rs.getString(</span><span style="color: #000000; background-color: #f5f5f5">3</span><span style="color: #000000; background-color: #f5f5f5">)</span><span style="color: #000000; background-color: #f5f5f5">+</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"></td></span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />out.println(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"><td></span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">+</span><span style="color: #000000; background-color: #f5f5f5">rs.getString(</span><span style="color: #000000; background-color: #f5f5f5">4</span><span style="color: #000000; background-color: #f5f5f5">)</span><span style="color: #000000; background-color: #f5f5f5">+</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"></td></span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />out.println(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"></tr></span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />}<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />out.println(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"></table></span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">);<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />conn.close();<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />}<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />}<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />catch(Exception e)<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />{<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />out.println(e.toString());<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/InBlock.gif" align="top" alt="" />System.out.println(e.toString());<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" alt="" />}<br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span></span><span style="color: #000000; background-color: #ffff00">%></span><span style="color: #000000"><br /> <img src="http://m.tkk7.com/images/OutliningIndicators/None.gif" align="top" alt="" /></span><span style="color: #0000ff"></</span><span style="color: #800000">body</span><span style="color: #0000ff">></</span><span style="color: #800000">html</span><span style="color: #0000ff">></span></div> <br /> 鐐瑰嚮<a href="http://localhost:8080/testmydb/">http://localhost:8080/testmydb/</a>閾炬帴鎴愬姛錛佷細(xì)鍑虹幇<br /> 宸茬粡鑾峰緱DataSource aa <table border="1"> <tbody> <tr> <td>TopicID</td> <td>Title</td> <td>Boardid</td> <td>PollID</td> <td>LockTopic</td> <td>Child</td> <td>PostUsername</td> <td>PostUserid</td> <td>DateAndTime</td> <td>hits</td> <td>Expression</td> <td>VoteTotal</td> <td>LastPost</td> <td>LastPostTime</td> <td>istop</td> <td>isvote</td> <td>isbest</td> <td>PostTable</td> <td>SmsUserList</td> <td>IsSmsTopic</td> <td>LastSmsTime</td> <td>TopicMode</td> <td>Mode</td> <td>GetMoney</td> <td>UseTools</td> <td>GetMoneyType</td> <td>HideName</td> <tr> <td>201314</td> <td>浜插惢鍖椾含錛佲斺旀垜浠紵澶х殑紲栧浗錛?/td> <td>37</td> <td>0</td> </tr> </tbody> </table> <br /> 褰撶劧tomcat榪炴帴闇瑕乻ql2000鐨?涓┍鍔ㄦ枃浠秏sutil.jar銆乵sbase.jar銆乵ssqlserver.jar<br /> sql2000闇瑕佸崌綰у埌sp4錛? <img src ="http://m.tkk7.com/b47248054/aggbug/195992.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/b47248054/" target="_blank">錛堝寳浜級(jí)鏈ㄦ湪</a> 2008-04-25 15:35 <a href="http://m.tkk7.com/b47248054/articles/195992.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>java 鍥劇墖鍒囧壊,緙╂斁,杞崲綾誨瀷http://m.tkk7.com/b47248054/articles/193667.html錛堝寳浜級(jí)鏈ㄦ湪錛堝寳浜級(jí)鏈ㄦ湪Thu, 17 Apr 2008 02:42:00 GMThttp://m.tkk7.com/b47248054/articles/193667.htmlhttp://m.tkk7.com/b47248054/comments/193667.htmlhttp://m.tkk7.com/b47248054/articles/193667.html#Feedback2http://m.tkk7.com/b47248054/comments/commentRss/193667.htmlhttp://m.tkk7.com/b47248054/services/trackbacks/193667.html闃呰鍏ㄦ枃

]]>
java鍚堟垚鍥懼儚http://m.tkk7.com/b47248054/articles/193662.html錛堝寳浜級(jí)鏈ㄦ湪錛堝寳浜級(jí)鏈ㄦ湪Thu, 17 Apr 2008 02:32:00 GMThttp://m.tkk7.com/b47248054/articles/193662.htmlhttp://m.tkk7.com/b47248054/comments/193662.htmlhttp://m.tkk7.com/b47248054/articles/193662.html#Feedback0http://m.tkk7.com/b47248054/comments/commentRss/193662.htmlhttp://m.tkk7.com/b47248054/services/trackbacks/193662.html 

涓嬮潰鏄竴涓悎騫跺浘璞$殑婧愮▼搴忋傛敞鎰忥細(xì)榪樻病鏈夌粡榪囨祴璇曘?br />
import java.io.File;
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;

public class test 
{    
  
public static void main(String args[]) 
  
{  
    
try
    
{
      
//璇誨彇絎竴寮犲浘鐗?/span>
      File fileOne = new File("D:\\M114317.png");
      BufferedImage ImageOne 
= ImageIO.read(fileOne);
      
int width = ImageOne.getWidth();//鍥劇墖瀹藉害
      int height = ImageOne.getHeight();//鍥劇墖楂樺害
      
//浠庡浘鐗囦腑璇誨彇RGB
      int[] ImageArrayOne = new int[width*height];
      ImageArrayOne 
= ImageOne.getRGB(0,0,width,height,ImageArrayOne,0,width);
      
//瀵圭浜屽紶鍥劇墖鍋氱浉鍚岀殑澶勭悊
      File fileTwo = new File("D:\\M114320.png");
      BufferedImage ImageTwo 
= ImageIO.read(fileTwo);    
      
int[] ImageArrayTwo = new int[width*height];
      ImageArrayTwo 
= ImageTwo.getRGB(0,0,width,height,ImageArrayTwo,0,width);
      
//鐢熸垚鏂板浘鐗?/span>
      BufferedImage ImageNew = new BufferedImage(width*2,height,BufferedImage.TYPE_INT_RGB);
      ImageNew.setRGB(
0,0,width,height,ImageArrayOne,0,width);//璁劇疆宸﹀崐閮ㄥ垎鐨凴GB
      ImageNew.setRGB(width,0,width,height,ImageArrayTwo,0,width);//璁劇疆鍙沖崐閮ㄥ垎鐨凴GB
      File outFile = new File("d:\\out.png");
      ImageIO.write(ImageNew, 
"png", outFile);//鍐欏浘鐗?/span>
    }

    
catch(Exception e)
    
{
      e.printStackTrace();
    }

  }

}




]]>
java璁捐妯″紡涔婼ingleton(鍗曟?.http://m.tkk7.com/b47248054/articles/188492.html錛堝寳浜級(jí)鏈ㄦ湪錛堝寳浜級(jí)鏈ㄦ湪Tue, 25 Mar 2008 07:00:00 GMThttp://m.tkk7.com/b47248054/articles/188492.htmlhttp://m.tkk7.com/b47248054/comments/188492.htmlhttp://m.tkk7.com/b47248054/articles/188492.html#Feedback0http://m.tkk7.com/b47248054/comments/commentRss/188492.htmlhttp://m.tkk7.com/b47248054/services/trackbacks/188492.html瀹氫箟:
 Singleton妯″紡涓昏浣滅敤鏄繚璇佸湪Java搴旂敤紼嬪簭涓紝涓涓被Class鍙湁涓涓疄渚嬪瓨鍦ㄣ?

 鍦ㄥ緢澶氭搷浣滀腑錛屾瘮濡傚緩绔嬬洰褰?鏁版嵁搴撹繛鎺ラ兘闇瑕佽繖鏍風(fēng)殑鍗曠嚎紼嬫搷浣溿?/p>

 榪樻湁, singleton鑳藉琚姸鎬佸寲; 榪欐牱錛屽涓崟鎬佺被鍦ㄤ竴璧峰氨鍙互浣滀負(fù)涓涓姸鎬佷粨搴撲竴鏍峰悜澶栨彁渚涙湇鍔★紝姣斿錛屼綘瑕佽鍧涗腑鐨勫笘瀛愯鏁板櫒錛屾瘡嬈℃祻瑙堜竴嬈¢渶瑕佽鏁幫紝鍗曟佺被鑳藉惁淇濇寔浣忚繖涓鏁幫紝騫朵笖鑳絪ynchronize鐨勫畨鍏ㄨ嚜鍔ㄥ姞1錛屽鏋滀綘瑕佹妸榪欎釜鏁板瓧姘鎬箙淇濆瓨鍒版暟鎹簱錛屼綘鍙互鍦ㄤ笉淇敼鍗曟佹帴鍙g殑鎯呭喌涓嬫柟渚跨殑鍋氬埌銆?/p>

 鍙﹀鏂歸潰錛孲ingleton涔熻兘澶熻鏃犵姸鎬佸寲銆傛彁渚涘伐鍏鋒ц川鐨勫姛鑳斤紝

 Singleton妯″紡灝變負(fù)鎴戜滑鎻愪緵浜?jiǎn)杩欐牱瀹炵幇鐨勫彲鑳姐備嬌鐢⊿ingleton鐨勫ソ澶勮繕鍦ㄤ簬鍙互鑺傜渷鍐呭瓨錛屽洜涓哄畠闄愬埗浜?jiǎn)瀹炰緥鐨勪釜鏁板Q屾湁鍒╀簬Java鍨冨溇鍥炴敹錛坓arbage collection錛夈?/p>

 鎴戜滑甯稿父鐪嬪埌宸ュ巶妯″紡涓被瑁呭叆鍣?class loader)涓篃鐢⊿ingleton妯″紡瀹炵幇鐨?鍥犱負(fù)琚鍏ョ殑綾誨疄闄呬篃灞炰簬璧勬簮銆?/p>

 鍏蜂綋瀹炴柦:
 鐢ㄩ潤(rùn)鎬佹柟娉曞疄鐜?Singleton

榪欑鏂規(guī)硶鏄嬌鐢ㄩ潤(rùn)鎬佹柟娉曟潵鐩戣瀹炰緥鐨勫垱寤?涓轟簡(jiǎn)闃叉鍒涘緩涓涓互涓婄殑瀹炰緥,鎴戜滑鏈濂芥妸鏋勯犲櫒澹版槑涓?private.

榪欐牱鍙互闃叉瀹㈡埛紼嬪簭鍛橀氳繃闄ょ敱鎴戜滑鎻愪緵鐨勬柟娉曚箣澶栫殑浠繪剰鏂瑰紡鏉ュ垱寤轟竴涓疄渚?濡傛灉涓嶆妸鏋勯犲櫒澹版槑涓簆rivate,緙栬瘧鍣ㄥ氨浼?xì)鑷綔鑱槑鐨勮嚜鍔ㄥ悓姝ヤ竴涓粯璁ょ殑friendly鏋勯犲櫒.榪欑瀹炵幇鏂規(guī)硶鏄渶甯歌鐨?

/*Singleton.java*/
public class Singleton {
    
    private Singleton()
{
    }

    
    
private static Singleton INSTANCE = null;

    
//    private static Singleton INSTANCE = new Singleton();
    
    
public static synchronized Singleton getInstance(){
        
if(INSTANCE == null){
            INSTANCE 
= new Singleton();
        }

        
return INSTANCE;
    }

}

/*SingletonDemo.java 嫻嬭瘯綾?/span>*/
public class SingletonDemo {

    
/**
     * 
@param args
     
*/

    
public static void main(String[] args) {
        
// TODO Auto-generated method stub
        Singleton d = Singleton.getInstance();
        Singleton e 
= Singleton.getInstance();
        
if(d == e){
            System.out.println(
"same");
        }
else{
            System.out.println(
"not same");
        }

    }


}


榪愯緇撴灉錛?br /> same
榪欒瘉鏄庡彧鍒涘緩浜?jiǎn)涓涓疄渚?


澶栦紒闈㈣瘯鍩烘湰閮戒細(xì)鑰冭繖涓笢瑗匡紱錛坖ava銆乯2ee錛?br /> 鏈漢浠婂ぉ涓婂崍鍘誨寳浜澶栦紒閬亣鍒拌繖涓棶棰橈紝璐ュ寳錛侊紒
甯屾湜鏈枃绔犲彲浠ョ粰閭d簺灝嗚鍘誨浼侀潰璇曠殑錛坖ava銆乯2ee錛夊甫鏉ヤ簺璁稿府鍔╋紱

]]>
鐢╦ava璇誨啓xml(org.apache.crimson)http://m.tkk7.com/b47248054/articles/188041.html錛堝寳浜級(jí)鏈ㄦ湪錛堝寳浜級(jí)鏈ㄦ湪Sun, 23 Mar 2008 08:16:00 GMThttp://m.tkk7.com/b47248054/articles/188041.htmlhttp://m.tkk7.com/b47248054/comments/188041.htmlhttp://m.tkk7.com/b47248054/articles/188041.html#Feedback0http://m.tkk7.com/b47248054/comments/commentRss/188041.htmlhttp://m.tkk7.com/b47248054/services/trackbacks/188041.html闃呰鍏ㄦ枃

]]>
主站蜘蛛池模板: 国产一级理论免费版| 精品国产精品久久一区免费式 | 96免费精品视频在线观看| 亚洲国产中文v高清在线观看| 亚洲AV综合色区无码一区爱AV| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 本道天堂成在人线av无码免费| 国产男女猛烈无遮挡免费网站 | 国产免费不卡视频| 亚洲AV无码成人精品区蜜桃| 久久美女网站免费| 黄色网址免费大全| 国产精品免费看久久久无码| 国产精品亚洲片在线va| 日韩在线观看免费| 亚洲人成色77777在线观看大| 久久久久久久久久久免费精品| 亚洲无码日韩精品第一页| 成年免费大片黄在线观看com| 国产成人综合亚洲AV第一页| 最近免费mv在线观看动漫| 亚洲黑人嫩小videos| 久九九精品免费视频| 亚洲第一福利网站| 丁香花免费高清视频完整版| 久久久久亚洲AV成人无码网站| 99精品国产成人a∨免费看| 亚洲剧情在线观看| 国产成人免费手机在线观看视频 | 免费女人高潮流视频在线观看| 亚洲成AV人片在线观看无码 | 暖暖免费在线中文日本| 亚洲国产精品视频| 亚洲精品无码不卡在线播放| 西西大胆无码视频免费| 国产亚洲福利精品一区二区| 免费a级毛片18以上观看精品| 中文字幕 亚洲 有码 在线| 国产色爽免费视频| 国产在线一区二区综合免费视频| 亚洲不卡中文字幕|