1銆侀潰鍚戝璞$殑鐗瑰緛鏈夊摢浜涙柟闈�
1.鎶借薄锛氭娊璞″氨鏄拷鐣ヤ竴涓富棰樹腑涓庡綋鍓嶇洰鏍囨棤鍏崇殑閭d簺鏂归潰锛屼互渚挎洿鍏呭垎鍦版敞鎰忎笌褰撳墠鐩爣鏈夊叧鐨勬柟闈€�傛娊璞″苟涓嶆墦绠椾簡瑙e叏閮ㄩ棶棰橈紝鑰屽彧鏄�夋嫨鍏朵腑鐨勪竴閮ㄥ垎锛屾殏鏃朵笉鐢ㄩ儴鍒嗙粏鑺傘�傛娊璞″寘鎷袱涓柟闈紝涓�鏄繃绋嬫娊璞★紝浜屾槸鏁版嵁鎶借薄銆�
2.缁ф壙锛氱户鎵挎槸涓�绉嶈仈缁撶被鐨勫眰娆℃ā鍨嬶紝骞朵笖鍏佽鍜岄紦鍔辩被鐨勯噸鐢紝瀹冩彁渚涗簡涓�绉嶆槑纭〃杩板叡鎬х殑鏂规硶銆傚璞$殑涓�涓柊绫诲彲浠ヤ粠鐜版湁鐨勭被涓淳鐢燂紝杩欎釜杩囩▼绉颁负绫荤户鎵裤�傛柊绫荤户鎵夸簡鍘熷绫荤殑鐗规�э紝鏂扮被绉颁负鍘熷绫荤殑娲剧敓绫伙紙瀛愮被锛夛紝鑰屽師濮嬬被绉颁负鏂扮被鐨勫熀绫伙紙鐖剁被锛夈�傛淳鐢熺被鍙互浠庡畠鐨勫熀绫婚偅閲岀户鎵挎柟娉曞拰瀹炰緥鍙橀噺锛屽苟涓旂被鍙互淇敼鎴栧鍔犳柊鐨勬柟娉曚娇涔嬫洿閫傚悎鐗规畩鐨勯渶瑕併��
3.灏佽锛氬皝瑁呮槸鎶婅繃绋嬪拰鏁版嵁鍖呭洿璧锋潵锛屽鏁版嵁鐨勮闂彧鑳介�氳繃宸插畾涔夌殑鐣岄潰銆傞潰鍚戝璞¤绠楀浜庤繖涓熀鏈蹇碉紝鍗崇幇瀹炰笘鐣屽彲浠ヨ鎻忕粯鎴愪竴绯诲垪瀹屽叏鑷不銆佸皝瑁呯殑瀵硅薄锛岃繖浜涘璞¢�氳繃涓�涓彈淇濇姢鐨勬帴鍙h闂叾浠栧璞°��
4. 澶氭�佹�э細澶氭�佹�ф槸鎸囧厑璁镐笉鍚岀被鐨勫璞″鍚屼竴娑堟伅浣滃嚭鍝嶅簲銆傚鎬佹�у寘鎷弬鏁板寲澶氭�佹�у拰鍖呭惈澶氭�佹�с�傚鎬佹�ц瑷�鍏锋湁鐏垫椿銆佹娊璞°�佽涓哄叡浜�佷唬鐮佸叡浜殑浼樺娍锛屽緢濂界殑瑙e喅浜嗗簲鐢ㄧ▼搴忓嚱鏁板悓鍚嶉棶棰樸��
2銆丼tring鏄渶鍩烘湰鐨勬暟鎹被鍨嬪悧?
鍩烘湰鏁版嵁绫诲瀷鍖呮嫭byte銆乮nt銆乧har銆乴ong銆乫loat銆乨ouble銆乥oolean鍜宻hort銆�
java.lang.String绫绘槸final绫诲瀷鐨勶紝鍥犳涓嶅彲浠ョ户鎵胯繖涓被銆佷笉鑳戒慨鏀硅繖涓被銆備负浜嗘彁楂樻晥鐜囪妭鐪佺┖闂达紝鎴戜滑搴旇鐢⊿tringBuffer绫�
3銆乮nt 鍜� Integer 鏈変粈涔堝尯鍒�
Java 鎻愪緵涓ょ涓嶅悓鐨勭被鍨嬶細寮曠敤绫诲瀷鍜屽師濮嬬被鍨嬶紙鎴栧唴缃被鍨嬶級銆侷nt鏄痡ava鐨勫師濮嬫暟鎹被鍨嬶紝Integer鏄痡ava涓篿nt鎻愪緵鐨勫皝瑁呯被銆侸ava涓烘瘡涓師濮嬬被鍨嬫彁渚涗簡灏佽绫汇��
鍘熷绫诲瀷灏佽绫籦ooleanBooleancharCharacterbyteByteshortShortintIntegerlongLongfloatFloatdoubleDouble
寮曠敤绫诲瀷鍜屽師濮嬬被鍨嬬殑琛屼负瀹屽叏涓嶅悓锛屽苟涓斿畠浠叿鏈変笉鍚岀殑璇箟銆傚紩鐢ㄧ被鍨嬪拰鍘熷绫诲瀷鍏锋湁涓嶅悓鐨勭壒寰佸拰鐢ㄦ硶锛屽畠浠寘鎷細澶у皬鍜岄�熷害闂锛岃繖绉嶇被鍨嬩互鍝绫诲瀷鐨勬暟鎹粨鏋勫瓨鍌紝褰撳紩鐢ㄧ被鍨嬪拰鍘熷绫诲瀷鐢ㄤ綔鏌愪釜绫荤殑瀹炰緥鏁版嵁鏃舵墍鎸囧畾鐨勭己鐪佸�笺�傚璞″紩鐢ㄥ疄渚嬪彉閲忕殑缂虹渷鍊间负null锛岃�屽師濮嬬被鍨嬪疄渚嬪彉閲忕殑缂虹渷鍊间笌瀹冧滑鐨勭被鍨嬫湁鍏炽��
4銆丼tring 鍜孲tringBuffer鐨勫尯鍒�
JAVA骞冲彴鎻愪緵浜嗕袱涓被锛歋tring鍜孲tringBuffer锛屽畠浠彲浠ュ偍瀛樺拰鎿嶄綔瀛楃涓诧紝鍗冲寘鍚涓瓧绗︾殑瀛楃鏁版嵁銆傝繖涓猄tring绫绘彁渚涗簡鏁板�间笉鍙敼鍙樼殑瀛楃涓层�傝�岃繖涓猄tringBuffer绫绘彁渚涚殑瀛楃涓茶繘琛屼慨鏀广�傚綋浣犵煡閬撳瓧绗︽暟鎹鏀瑰彉鐨勬椂鍊欎綘灏卞彲浠ヤ娇鐢⊿tringBuffer銆傚吀鍨嬪湴锛屼綘鍙互浣跨敤StringBuffers鏉ュ姩鎬佹瀯閫犲瓧绗︽暟鎹��
5銆佽繍琛屾椂寮傚父涓庝竴鑸紓甯告湁浣曞紓鍚岋紵
寮傚父琛ㄧず绋嬪簭杩愯杩囩▼涓彲鑳藉嚭鐜扮殑闈炴甯哥姸鎬侊紝杩愯鏃跺紓甯歌〃绀鸿櫄鎷熸満鐨勯�氬父鎿嶄綔涓彲鑳介亣鍒扮殑寮傚父锛屾槸涓�绉嶅父瑙佽繍琛岄敊璇�俲ava缂栬瘧鍣ㄨ姹傛柟娉曞繀椤诲0鏄庢姏鍑哄彲鑳藉彂鐢熺殑闈炶繍琛屾椂寮傚父锛屼絾鏄苟涓嶈姹傚繀椤诲0鏄庢姏鍑烘湭琚崟鑾风殑杩愯鏃跺紓甯搞��
6銆佽鍑篠ervlet鐨勭敓鍛藉懆鏈燂紝骞惰鍑篠ervlet鍜孋GI鐨勫尯鍒��
Servlet琚湇鍔″櫒瀹炰緥鍖栧悗锛屽鍣ㄨ繍琛屽叾init鏂规硶锛岃姹傚埌杈炬椂杩愯鍏秙ervice鏂规硶锛宻ervice鏂规硶鑷姩娲鹃仯杩愯涓庤姹傚搴旂殑doXXX鏂规硶锛坉oGet锛宒oPost锛夌瓑锛屽綋鏈嶅姟鍣ㄥ喅瀹氬皢瀹炰緥閿�姣佺殑鏃跺�欒皟鐢ㄥ叾destroy鏂规硶銆�
涓巆gi鐨勫尯鍒湪浜巗ervlet澶勪簬鏈嶅姟鍣ㄨ繘绋嬩腑锛屽畠閫氳繃澶氱嚎绋嬫柟寮忚繍琛屽叾service鏂规硶锛屼竴涓疄渚嬪彲浠ユ湇鍔′簬澶氫釜璇锋眰锛屽苟涓斿叾瀹炰緥涓�鑸笉浼氶攢姣侊紝鑰孋GI瀵规瘡涓姹傞兘浜х敓鏂扮殑杩涚▼锛屾湇鍔″畬鎴愬悗灏遍攢姣侊紝鎵�浠ユ晥鐜囦笂浣庝簬servlet銆�
7銆佽鍑篈rrayList,Vector, LinkedList鐨勫瓨鍌ㄦ�ц兘鍜岀壒鎬�
ArrayList鍜孷ector閮芥槸浣跨敤鏁扮粍鏂瑰紡瀛樺偍鏁版嵁锛屾鏁扮粍鍏冪礌鏁板ぇ浜庡疄闄呭瓨鍌ㄧ殑鏁版嵁浠ヤ究澧炲姞鍜屾彃鍏ュ厓绱狅紝瀹冧滑閮藉厑璁哥洿鎺ユ寜搴忓彿绱㈠紩鍏冪礌锛屼絾鏄彃鍏ュ厓绱犺娑夊強鏁扮粍鍏冪礌绉诲姩绛夊唴瀛樻搷浣滐紝鎵�浠ョ储寮曟暟鎹揩鑰屾彃鍏ユ暟鎹參锛孷ector鐢变簬浣跨敤浜唖ynchronized鏂规硶锛堢嚎绋嬪畨鍏級锛岄�氬父鎬ц兘涓婅緝ArrayList宸紝鑰孡inkedList浣跨敤鍙屽悜閾捐〃瀹炵幇瀛樺偍锛屾寜搴忓彿绱㈠紩鏁版嵁闇�瑕佽繘琛屽墠鍚戞垨鍚庡悜閬嶅巻锛屼絾鏄彃鍏ユ暟鎹椂鍙渶瑕佽褰曟湰椤圭殑鍓嶅悗椤瑰嵆鍙紝鎵�浠ユ彃鍏ラ�熷害杈冨揩銆�
8銆丒JB鏄熀浜庡摢浜涙妧鏈疄鐜扮殑锛熷苟璇村嚭SessionBean鍜孍ntityBean鐨勫尯鍒紝StatefulBean鍜孲tatelessBean鐨勫尯鍒��
EJB鍖呮嫭Session Bean銆丒ntity Bean銆丮essage Driven Bean锛屽熀浜嶫NDI銆丷MI銆丣AT绛夋妧鏈疄鐜般��
SessionBean鍦↗2EE搴旂敤绋嬪簭涓鐢ㄦ潵瀹屾垚涓�浜涙湇鍔″櫒绔殑涓氬姟鎿嶄綔锛屼緥濡傝闂暟鎹簱銆佽皟鐢ㄥ叾浠朎JB缁勪欢銆侲ntityBean琚敤鏉ヤ唬琛ㄥ簲鐢ㄧ郴缁熶腑鐢ㄥ埌鐨勬暟鎹��
瀵逛簬瀹㈡埛鏈猴紝SessionBean鏄竴绉嶉潪鎸佷箙鎬у璞★紝瀹冨疄鐜版煇浜涘湪鏈嶅姟鍣ㄤ笂杩愯鐨勪笟鍔¢�昏緫銆�
瀵逛簬瀹㈡埛鏈猴紝EntityBean鏄竴绉嶆寔涔呮�у璞★紝瀹冧唬琛ㄤ竴涓瓨鍌ㄥ湪鎸佷箙鎬у瓨鍌ㄥ櫒涓殑瀹炰綋鐨勫璞¤鍥撅紝鎴栨槸涓�涓敱鐜版湁浼佷笟搴旂敤绋嬪簭瀹炵幇鐨勫疄浣撱��
Session Bean 杩樺彲浠ュ啀缁嗗垎涓� Stateful Session Bean 涓� Stateless Session Bean 锛岃繖涓ょ鐨� Session Bean閮藉彲浠ュ皢绯荤粺閫昏緫鏀惧湪 method涔嬩腑鎵ц锛屼笉鍚岀殑鏄� Stateful Session Bean 鍙互璁板綍鍛煎彨鑰呯殑鐘舵�侊紝鍥犳閫氬父鏉ヨ锛屼竴涓娇鐢ㄨ�呬細鏈変竴涓浉瀵瑰簲鐨� Stateful Session Bean 鐨勫疄浣撱�係tateless Session Bean 铏界劧涔熸槸閫昏緫缁勪欢锛屼絾鏄粬鍗翠笉璐熻矗璁板綍浣跨敤鑰呯姸鎬侊紝涔熷氨鏄褰撲娇鐢ㄨ�呭懠鍙� Stateless Session Bean 鐨勬椂鍊欙紝EJB Container 骞朵笉浼氭壘瀵荤壒瀹氱殑 Stateless Session Bean 鐨勫疄浣撴潵鎵ц杩欎釜 method銆傛崲瑷�涔嬶紝寰堝彲鑳芥暟涓娇鐢ㄨ�呭湪鎵ц鏌愪釜 Stateless Session Bean 鐨� methods 鏃讹紝浼氭槸鍚屼竴涓� Bean 鐨� Instance 鍦ㄦ墽琛屻�備粠鍐呭瓨鏂归潰鏉ョ湅锛� Stateful Session Bean 涓� Stateless Session Bean 姣旇緝锛� Stateful Session Bean 浼氭秷鑰� J2EE Server 杈冨鐨勫唴瀛橈紝鐒惰�� Stateful Session Bean 鐨勪紭鍔垮嵈鍦ㄤ簬浠栧彲浠ョ淮鎸佷娇鐢ㄨ�呯殑鐘舵�併��
9銆丆ollection 鍜� Collections鐨勫尯鍒��Collection鏄泦鍚堢被鐨勪笂绾ф帴鍙o紝缁ф壙涓庝粬鐨勬帴鍙d富瑕佹湁Set 鍜孡ist.
Collections鏄拡瀵归泦鍚堢被鐨勪竴涓府鍔╃被锛屼粬鎻愪緵涓�绯诲垪闈欐�佹柟娉曞疄鐜板鍚勭闆嗗悎鐨勬悳绱€�佹帓搴忋�佺嚎绋嬪畨鍏ㄥ寲绛夋搷浣溿��
10銆�&鍜�&&鐨勫尯鍒��&鏄綅杩愮畻绗︼紝琛ㄧず鎸変綅涓庤繍绠楋紝&&鏄�昏緫杩愮畻绗︼紝琛ㄧず閫昏緫涓庯紙and锛夈��
11銆丠ashMap鍜孒ashtable鐨勫尯鍒��HashMap鏄疕ashtable鐨勮交閲忕骇瀹炵幇锛堥潪绾跨▼瀹夊叏鐨勫疄鐜帮級锛屼粬浠兘瀹屾垚浜哅ap鎺ュ彛锛屼富瑕佸尯鍒湪浜嶩ashMap鍏佽绌猴紙null锛夐敭鍊硷紙key锛�,鐢变簬闈炵嚎绋嬪畨鍏紝鏁堢巼涓婂彲鑳介珮浜嶩ashtable銆�
HashMap鍏佽灏唍ull浣滀负涓�涓猠ntry鐨刱ey鎴栬�卾alue锛岃�孒ashtable涓嶅厑璁搞��
HashMap鎶奌ashtable鐨刢ontains鏂规硶鍘绘帀浜嗭紝鏀规垚containsvalue鍜宑ontainsKey銆傚洜涓篶ontains鏂规硶瀹规槗璁╀汉寮曡捣璇В銆� Hashtable缁ф壙鑷狣ictionary绫伙紝鑰孒ashMap鏄疛ava1.2寮曡繘鐨凪ap interface鐨勪竴涓疄鐜般��
鏈�澶х殑涓嶅悓鏄紝Hashtable鐨勬柟娉曟槸Synchronize鐨勶紝鑰孒ashMap涓嶆槸锛屽湪澶氫釜绾跨▼璁块棶Hashtable鏃讹紝涓嶉渶瑕佽嚜宸变负瀹冪殑鏂规硶瀹炵幇鍚屾锛岃�孒ashMap 灏卞繀椤讳负涔嬫彁渚涘鍚屾銆�
Hashtable鍜孒ashMap閲囩敤鐨刪ash/rehash绠楁硶閮藉ぇ姒備竴鏍凤紝鎵�浠ユ�ц兘涓嶄細鏈夊緢澶х殑宸紓銆�
12銆乫inal, finally, finalize鐨勫尯鍒��final 鐢ㄤ簬澹版槑灞炴�э紝鏂规硶鍜岀被锛屽垎鍒〃绀哄睘鎬т笉鍙彉锛屾柟娉曚笉鍙鐩栵紝绫讳笉鍙户鎵裤�俧inally鏄紓甯稿鐞嗚鍙ョ粨鏋勭殑涓�閮ㄥ垎锛岃〃绀烘�绘槸鎵ц銆俧inalize鏄疧bject绫荤殑涓�涓柟娉曪紝鍦ㄥ瀮鍦炬敹闆嗗櫒鎵ц鐨勬椂鍊欎細璋冪敤琚洖鏀跺璞$殑姝ゆ柟娉曪紝鍙互瑕嗙洊姝ゆ柟娉曟彁渚涘瀮鍦炬敹闆嗘椂鐨勫叾浠栬祫婧愬洖鏀讹紝渚嬪鍏抽棴鏂囦欢绛夈��
13銆乻leep() 鍜� wait() 鏈変粈涔堝尯鍒�?sleep鏄嚎绋嬬被锛圱hread锛夌殑鏂规硶锛屽鑷存绾跨▼鏆傚仠鎵ц鎸囧畾鏃堕棿锛岀粰鎵ц鏈轰細缁欏叾浠栫嚎绋嬶紝浣嗘槸鐩戞帶鐘舵�佷緷鐒朵繚鎸侊紝鍒版椂鍚庝細鑷姩鎭㈠銆傝皟鐢╯leep涓嶄細閲婃斁瀵硅薄閿併�倃ait鏄疧bject绫荤殑鏂规硶锛屽姝ゅ璞¤皟鐢╳ait鏂规硶瀵艰嚧鏈嚎绋嬫斁寮冨璞¢攣锛岃繘鍏ョ瓑寰呮瀵硅薄鐨勭瓑寰呴攣瀹氭睜锛屽彧鏈夐拡瀵规瀵硅薄鍙戝嚭notify鏂规硶锛堟垨notifyAll锛夊悗鏈嚎绋嬫墠杩涘叆瀵硅薄閿佸畾姹犲噯澶囪幏寰楀璞¢攣杩涘叆杩愯鐘舵�併��
14銆丱verload鍜孫verride鐨勫尯鍒�侽verloaded鐨勬柟娉曟槸鍚﹀彲浠ユ敼鍙樿繑鍥炲�肩殑绫诲瀷?
鏂规硶鐨勯噸鍐橭verriding鍜岄噸杞絆verloading鏄疛ava澶氭�佹�х殑涓嶅悓琛ㄧ幇銆傞噸鍐橭verriding鏄埗绫讳笌瀛愮被涔嬮棿澶氭�佹�х殑涓�绉嶈〃鐜帮紝閲嶈浇Overloading鏄竴涓被涓鎬佹�х殑涓�绉嶈〃鐜般�傚鏋滃湪瀛愮被涓畾涔夋煇鏂规硶涓庡叾鐖剁被鏈夌浉鍚岀殑鍚嶇О鍜屽弬鏁帮紝鎴戜滑璇磋鏂规硶琚噸鍐� (Overriding)銆傚瓙绫荤殑瀵硅薄浣跨敤杩欎釜鏂规硶鏃讹紝灏嗚皟鐢ㄥ瓙绫讳腑鐨勫畾涔夛紝瀵瑰畠鑰岃█锛岀埗绫讳腑鐨勫畾涔夊鍚岃鈥滃睆钄解�濅簡銆傚鏋滃湪涓�涓被涓畾涔変簡澶氫釜鍚屽悕鐨勬柟娉曪紝瀹冧滑鎴栨湁涓嶅悓鐨勫弬鏁颁釜鏁版垨鏈変笉鍚岀殑鍙傛暟绫诲瀷锛屽垯绉颁负鏂规硶鐨勯噸杞�(Overloading)銆侽verloaded鐨勬柟娉曟槸鍙互鏀瑰彉杩斿洖鍊肩殑绫诲瀷銆�
15銆乪rror鍜宔xception鏈変粈涔堝尯鍒�?
error 琛ㄧず鎭㈠涓嶆槸涓嶅彲鑳戒絾寰堝洶闅剧殑鎯呭喌涓嬬殑涓�绉嶄弗閲嶉棶棰樸�傛瘮濡傝鍐呭瓨婧㈠嚭銆備笉鍙兘鎸囨湜绋嬪簭鑳藉鐞嗚繖鏍风殑鎯呭喌銆�
exception 琛ㄧず涓�绉嶈璁℃垨瀹炵幇闂銆備篃灏辨槸璇达紝瀹冭〃绀哄鏋滅▼搴忚繍琛屾甯革紝浠庝笉浼氬彂鐢熺殑鎯呭喌銆�
16銆佸悓姝ュ拰寮傛鏈変綍寮傚悓锛屽湪浠�涔堟儏鍐典笅鍒嗗埆浣跨敤浠栦滑锛熶妇渚嬭鏄庛��
濡傛灉鏁版嵁灏嗗湪绾跨▼闂村叡浜�備緥濡傛鍦ㄥ啓鐨勬暟鎹互鍚庡彲鑳借鍙︿竴涓嚎绋嬭鍒帮紝鎴栬�呮鍦ㄨ鐨勬暟鎹彲鑳藉凡缁忚鍙︿竴涓嚎绋嬪啓杩囦簡锛岄偅涔堣繖浜涙暟鎹氨鏄叡浜暟鎹紝蹇呴』杩涜鍚屾瀛樺彇銆傚綋搴旂敤绋嬪簭鍦ㄥ璞′笂璋冪敤浜嗕竴涓渶瑕佽姳璐瑰緢闀挎椂闂存潵鎵ц鐨勬柟娉曪紝骞朵笖涓嶅笇鏈涜绋嬪簭绛夊緟鏂规硶鐨勮繑鍥炴椂锛屽氨搴旇浣跨敤寮傛缂栫▼锛屽湪寰堝鎯呭喌涓嬮噰鐢ㄥ紓姝ラ�斿緞寰�寰�鏇存湁鏁堢巼銆�
17銆乤bstract class鍜宨nterface鏈変粈涔堝尯鍒�?澹版槑鏂规硶鐨勫瓨鍦ㄨ�屼笉鍘诲疄鐜板畠鐨勭被琚彨鍋氭娊璞$被锛坅bstract class锛夛紝瀹冪敤浜庤鍒涘缓涓�涓綋鐜版煇浜涘熀鏈涓虹殑绫伙紝骞朵负璇ョ被澹版槑鏂规硶锛屼絾涓嶈兘鍦ㄨ绫讳腑瀹炵幇璇ョ被鐨勬儏鍐点�備笉鑳藉垱寤篴bstract 绫荤殑瀹炰緥銆傜劧鑰屽彲浠ュ垱寤轰竴涓彉閲忥紝鍏剁被鍨嬫槸涓�涓娊璞$被锛屽苟璁╁畠鎸囧悜鍏蜂綋瀛愮被鐨勪竴涓疄渚嬨�備笉鑳芥湁鎶借薄鏋勯�犲嚱鏁版垨鎶借薄闈欐�佹柟娉曘�侫bstract 绫荤殑瀛愮被涓哄畠浠埗绫讳腑鐨勬墍鏈夋娊璞℃柟娉曟彁渚涘疄鐜帮紝鍚﹀垯瀹冧滑涔熸槸鎶借薄绫讳负銆傚彇鑰屼唬涔嬶紝鍦ㄥ瓙绫讳腑瀹炵幇璇ユ柟娉曘�傜煡閬撳叾琛屼负鐨勫叾瀹冪被鍙互鍦ㄧ被涓疄鐜拌繖浜涙柟娉曘�傛帴鍙o紙interface锛夋槸鎶借薄绫荤殑鍙樹綋銆傚湪鎺ュ彛涓紝鎵�鏈夋柟娉曢兘鏄娊璞$殑銆傚缁ф壙鎬у彲閫氳繃瀹炵幇杩欐牱鐨勬帴鍙h�岃幏寰椼�傛帴鍙d腑鐨勬墍鏈夋柟娉曢兘鏄娊璞$殑锛屾病鏈変竴涓湁绋嬪簭浣撱�傛帴鍙e彧鍙互瀹氫箟static final鎴愬憳鍙橀噺銆傛帴鍙g殑瀹炵幇涓庡瓙绫荤浉浼硷紝闄や簡璇ュ疄鐜扮被涓嶈兘浠庢帴鍙e畾涔変腑缁ф壙琛屼负銆傚綋绫诲疄鐜扮壒娈婃帴鍙f椂锛屽畠瀹氫箟锛堝嵆灏嗙▼搴忎綋缁欎簣锛夋墍鏈夎繖绉嶆帴鍙g殑鏂规硶銆傜劧鍚庯紝瀹冨彲浠ュ湪瀹炵幇浜嗚鎺ュ彛鐨勭被鐨勪换浣曞璞′笂璋冪敤鎺ュ彛鐨勬柟娉曘�傜敱浜庢湁鎶借薄绫伙紝瀹冨厑璁镐娇鐢ㄦ帴鍙e悕浣滀负寮曠敤鍙橀噺鐨勭被鍨嬨�傞�氬父鐨勫姩鎬佽仈缂栧皢鐢熸晥銆傚紩鐢ㄥ彲浠ヨ浆鎹㈠埌鎺ュ彛绫诲瀷鎴栦粠鎺ュ彛绫诲瀷杞崲锛宨nstanceof 杩愮畻绗﹀彲浠ョ敤鏉ュ喅瀹氭煇瀵硅薄鐨勭被鏄惁瀹炵幇浜嗘帴鍙c��
18銆乭eap鍜宻tack鏈変粈涔堝尯鍒��鏍堟槸涓�绉嶇嚎褰㈤泦鍚堬紝鍏舵坊鍔犲拰鍒犻櫎鍏冪礌鐨勬搷浣滃簲鍦ㄥ悓涓�娈靛畬鎴愩�傛爤鎸夌収鍚庤繘鍏堝嚭鐨勬柟寮忚繘琛屽鐞嗐�傚爢鏄爤鐨勪竴涓粍鎴愬厓绱�
19銆乫orward 鍜宺edirect鐨勫尯鍒�forward鏄湇鍔″櫒璇锋眰璧勬簮锛屾湇鍔″櫒鐩存帴璁块棶鐩爣鍦板潃鐨刄RL锛屾妸閭d釜URL鐨勫搷搴斿唴瀹硅鍙栬繃鏉ワ紝鐒跺悗鎶婅繖浜涘唴瀹瑰啀鍙戠粰娴忚鍣紝娴忚鍣ㄦ牴鏈笉鐭ラ亾鏈嶅姟鍣ㄥ彂閫佺殑鍐呭鏄粠鍝効鏉ョ殑锛屾墍浠ュ畠鐨勫湴鍧�鏍忎腑杩樻槸鍘熸潵鐨勫湴鍧�銆� redirect灏辨槸鏈嶅姟绔牴鎹�昏緫,鍙戦�佷竴涓姸鎬佺爜,鍛婅瘔娴忚鍣ㄩ噸鏂板幓璇锋眰閭d釜鍦板潃锛屼竴鑸潵璇存祻瑙堝櫒浼氱敤鍒氭墠璇锋眰鐨勬墍鏈夊弬鏁伴噸鏂拌姹傦紝鎵�浠ession,request鍙傛暟閮藉彲浠ヨ幏鍙栥��
20銆丒JB涓嶫AVA BEAN鐨勫尯鍒紵Java Bean 鏄彲澶嶇敤鐨勭粍浠讹紝瀵笿ava Bean骞舵病鏈変弗鏍肩殑瑙勮寖锛岀悊璁轰笂璁诧紝浠讳綍涓�涓狫ava绫婚兘鍙互鏄竴涓狟ean銆備絾閫氬父鎯呭喌涓嬶紝鐢变簬Java Bean鏄瀹瑰櫒鎵�鍒涘缓锛堝Tomcat锛夌殑锛屾墍浠ava Bean搴斿叿鏈変竴涓棤鍙傜殑鏋勯�犲櫒锛屽彟澶栵紝閫氬父Java Bean杩樿瀹炵幇Serializable鎺ュ彛鐢ㄤ簬瀹炵幇Bean鐨勬寔涔呮�с�侸ava Bean瀹為檯涓婄浉褰撲簬寰蒋COM妯″瀷涓殑鏈湴杩涚▼鍐匔OM缁勪欢锛屽畠鏄笉鑳借璺ㄨ繘绋嬭闂殑銆侲nterprise Java Bean 鐩稿綋浜嶥COM锛屽嵆鍒嗗竷寮忕粍浠躲�傚畠鏄熀浜嶫ava鐨勮繙绋嬫柟娉曡皟鐢紙RMI锛夋妧鏈殑锛屾墍浠JB鍙互琚繙绋嬭闂紙璺ㄨ繘绋嬨�佽法璁$畻鏈猴級銆備絾EJB蹇呴』琚竷缃插湪璇稿Webspere銆乄ebLogic杩欐牱鐨勫鍣ㄤ腑锛孍JB瀹㈡埛浠庝笉鐩存帴璁块棶鐪熸鐨凟JB缁勪欢锛岃�屾槸閫氳繃鍏跺鍣ㄨ闂�侲JB瀹瑰櫒鏄疎JB缁勪欢鐨勪唬鐞嗭紝EJB缁勪欢鐢卞鍣ㄦ墍鍒涘缓鍜岀鐞嗐�傚鎴烽�氳繃瀹瑰櫒鏉ヨ闂湡姝g殑EJB缁勪欢銆�
21銆丼tatic Nested Class 鍜� Inner Class鐨勪笉鍚屻��Static Nested Class鏄澹版槑涓洪潤鎬侊紙static锛夌殑鍐呴儴绫伙紝瀹冨彲浠ヤ笉渚濊禆浜庡閮ㄧ被瀹炰緥琚疄渚嬪寲銆傝�岄�氬父鐨勫唴閮ㄧ被闇�瑕佸湪澶栭儴绫诲疄渚嬪寲鍚庢墠鑳藉疄渚嬪寲銆�
22銆丣SP涓姩鎬両NCLUDE涓庨潤鎬両NCLUDE鐨勫尯鍒紵鍔ㄦ�両NCLUDE鐢╦sp:include鍔ㄤ綔瀹炵幇 瀹冩�绘槸浼氭鏌ユ墍鍚枃浠朵腑鐨勫彉鍖栵紝閫傚悎鐢ㄤ簬鍖呭惈鍔ㄦ�侀〉闈紝骞朵笖鍙互甯﹀弬鏁般�傞潤鎬両NCLUDE鐢╥nclude浼爜瀹炵幇,瀹氫笉浼氭鏌ユ墍鍚枃浠剁殑鍙樺寲锛岄�傜敤浜庡寘鍚潤鎬侀〉闈�<%@ include file="included.htm" %>
23銆佷粈涔堟椂鍊欑敤assert銆�assertion(鏂█)鍦ㄨ蒋浠跺紑鍙戜腑鏄竴绉嶅父鐢ㄧ殑璋冭瘯鏂瑰紡锛屽緢澶氬紑鍙戣瑷�涓兘鏀寔杩欑鏈哄埗銆傚湪瀹炵幇涓紝assertion灏辨槸鍦ㄧ▼搴忎腑鐨勪竴鏉¤鍙ワ紝瀹冨涓�涓猙oolean琛ㄨ揪寮忚繘琛屾鏌ワ紝涓�涓纭▼搴忓繀椤讳繚璇佽繖涓猙oolean琛ㄨ揪寮忕殑鍊间负true锛涘鏋滆鍊间负false锛岃鏄庣▼搴忓凡缁忓浜庝笉姝g‘鐨勭姸鎬佷笅锛岀郴缁熷皢缁欏嚭璀﹀憡鎴栭��鍑恒�備竴鑸潵璇达紝assertion鐢ㄤ簬淇濊瘉绋嬪簭鏈�鍩烘湰銆佸叧閿殑姝g‘鎬с�俛ssertion妫�鏌ラ�氬父鍦ㄥ紑鍙戝拰娴嬭瘯鏃跺紑鍚�備负浜嗘彁楂樻�ц兘锛屽湪杞欢鍙戝竷鍚庯紝assertion妫�鏌ラ�氬父鏄叧闂殑銆�
24銆丟C鏄粈涔�? 涓轰粈涔堣鏈塆C?GC鏄瀮鍦炬敹闆嗙殑鎰忔�濓紙Gabage Collection锛�,鍐呭瓨澶勭悊鏄紪绋嬩汉鍛樺鏄撳嚭鐜伴棶棰樼殑鍦版柟锛屽繕璁版垨鑰呴敊璇殑鍐呭瓨鍥炴敹浼氬鑷寸▼搴忔垨绯荤粺鐨勪笉绋冲畾鐢氳嚦宕╂簝锛孞ava鎻愪緵鐨凣C鍔熻兘鍙互鑷姩鐩戞祴瀵硅薄鏄惁瓒呰繃浣滅敤鍩熶粠鑰岃揪鍒拌嚜鍔ㄥ洖鏀跺唴瀛樼殑鐩殑锛孞ava璇█娌℃湁鎻愪緵閲婃斁宸插垎閰嶅唴瀛樼殑鏄剧ず鎿嶄綔鏂规硶銆�
25銆乻hort s1 = 1; s1 = s1 + 1;鏈変粈涔堥敊? short s1 = 1; s1 += 1;鏈変粈涔堥敊?short s1 = 1; s1 = s1 + 1; 锛坰1+1杩愮畻缁撴灉鏄痠nt鍨嬶紝闇�瑕佸己鍒惰浆鎹㈢被鍨嬶級聽 short s1 = 1; s1 += 1;锛堝彲浠ユ纭紪璇戯級
26銆丮ath.round(11.5)绛夋柤澶氬皯? Math.round(-11.5)绛夋柤澶氬皯?Math.round(11.5)==12Math.round(-11.5)==-11round鏂规硶杩斿洖涓庡弬鏁版渶鎺ヨ繎鐨勯暱鏁存暟锛屽弬鏁板姞1/2鍚庢眰鍏秄loor.
27銆丼tring s = new String("xyz");鍒涘缓浜嗗嚑涓猄tring Object?涓や釜
28銆佽璁�4涓嚎绋嬶紝鍏朵腑涓や釜绾跨▼姣忔瀵筳澧炲姞1锛屽彟澶栦袱涓嚎绋嬪j姣忔鍑忓皯1銆傚啓鍑虹▼搴忋��
浠ヤ笅绋嬪簭浣跨敤鍐呴儴绫诲疄鐜扮嚎绋嬶紝瀵筳澧炲噺鐨勬椂鍊欐病鏈夎�冭檻椤哄簭闂銆�
public class ThreadTest1{private int j;public static void main(String args[]){ThreadTest1 tt=new ThreadTest1();Inc inc=tt.new Inc();Dec dec=tt.new Dec();for(int i=0;i<2;i++){Thread t=new Thread(inc);t.start();t=new Thread(dec);t.start();}}private synchronized void inc(){j++;System.out.println(Thread.currentThread().getName()+"-inc:"+j);}
private synchronized void dec(){j--;System.out.println(Thread.currentThread().getName()+"-dec:"+j);聽 }
class Inc implements Runnable{public void run(){for(int i=0;i<100;i++){inc();}}聽 } class Dec implements Runnable{public void run(){for(int i=0;i<100;i++){dec();}}聽 }}
29銆丣ava鏈夋病鏈塯oto?java涓殑淇濈暀瀛楋紝鐜板湪娌℃湁鍦╦ava涓娇鐢ㄣ��
30銆佸惎鍔ㄤ竴涓嚎绋嬫槸鐢╮un()杩樻槸start()?鍚姩涓�涓嚎绋嬫槸璋冪敤start()鏂规硶锛屼娇绾跨▼鎵�浠h〃鐨勮櫄鎷熷鐞嗘満澶勪簬鍙繍琛岀姸鎬侊紝杩欐剰鍛崇潃瀹冨彲浠ョ敱JVM璋冨害骞舵墽琛屻�傝繖骞朵笉鎰忓懗鐫�绾跨▼灏变細绔嬪嵆杩愯銆俽un()鏂规硶鍙互浜х敓蹇呴』閫�鍑虹殑鏍囧織鏉ュ仠姝竴涓嚎绋嬨��
31銆丒JB鍖呮嫭锛圫essionBean,EntityBean锛夎鍑轰粬浠殑鐢熷懡鍛ㄦ湡锛屽強濡備綍绠$悊浜嬪姟鐨勶紵
SessionBean锛歋tateless Session Bean 鐨勭敓鍛藉懆鏈熸槸鐢卞鍣ㄥ喅瀹氱殑锛屽綋瀹㈡埛鏈哄彂鍑鸿姹傝寤虹珛涓�涓狟ean鐨勫疄渚嬫椂锛孍JB瀹瑰櫒涓嶄竴瀹氳鍒涘缓涓�涓柊鐨凚ean鐨勫疄渚嬩緵瀹㈡埛鏈鸿皟鐢紝鑰屾槸闅忎究鎵句竴涓幇鏈夌殑瀹炰緥鎻愪緵缁欏鎴锋満銆傚綋瀹㈡埛鏈虹涓�娆¤皟鐢ㄤ竴涓猄tateful Session Bean 鏃讹紝瀹瑰櫒蹇呴』绔嬪嵆鍦ㄦ湇鍔″櫒涓垱寤轰竴涓柊鐨凚ean瀹炰緥锛屽苟鍏宠仈鍒板鎴锋満涓婏紝浠ュ悗姝ゅ鎴锋満璋冪敤Stateful Session Bean 鐨勬柟娉曟椂瀹瑰櫒浼氭妸璋冪敤鍒嗘淳鍒颁笌姝ゅ鎴锋満鐩稿叧鑱旂殑Bean瀹炰緥銆侲ntityBean锛欵ntity Beans鑳藉瓨娲荤浉瀵硅緝闀跨殑鏃堕棿锛屽苟涓旂姸鎬佹槸鎸佺画鐨勩�傚彧瑕佹暟鎹簱涓殑鏁版嵁瀛樺湪锛孍ntity beans灏变竴鐩村瓨娲汇�傝�屼笉鏄寜鐓у簲鐢ㄧ▼搴忔垨鑰呮湇鍔¤繘绋嬫潵璇寸殑銆傚嵆浣縀JB瀹瑰櫒宕╂簝浜嗭紝Entity beans涔熸槸瀛樻椿鐨勩�侲ntity Beans鐢熷懡鍛ㄦ湡鑳藉琚鍣ㄦ垨鑰� Beans鑷繁绠$悊銆侲JB閫氳繃浠ヤ笅鎶�鏈鐞嗗疄鍔★細瀵硅薄绠$悊缁勭粐锛圤MG锛夌殑瀵硅薄瀹炲姟鏈嶅姟锛圤TS锛夛紝Sun Microsystems鐨凾ransaction Service锛圝TS锛夈�丣ava Transaction API锛圝TA锛夛紝寮�鍙戠粍锛圶/Open锛夌殑XA鎺ュ彛銆�
32銆佸簲鐢ㄦ湇鍔″櫒鏈夐偅浜涳紵
BEA WebLogic Server锛孖BM WebSphere Application Server锛孫racle9i Application Server锛宩Boss锛孴omcat
33銆佺粰鎴戜竴涓綘鏈�甯歌鍒扮殑runtime exception銆�
ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException
34銆佹帴鍙f槸鍚﹀彲缁ф壙鎺ュ彛? 鎶借薄绫绘槸鍚﹀彲瀹炵幇(implements)鎺ュ彛? 鎶借薄绫绘槸鍚﹀彲缁ф壙瀹炰綋绫�(concrete class)?
鎺ュ彛鍙互缁ф壙鎺ュ彛銆傛娊璞$被鍙互瀹炵幇(implements)鎺ュ彛锛屾娊璞$被鏄惁鍙户鎵垮疄浣撶被锛屼絾鍓嶆彁鏄疄浣撶被蹇呴』鏈夋槑纭殑鏋勯�犲嚱鏁般��
35銆丩ist, Set, Map鏄惁缁ф壙鑷狢ollection鎺ュ彛?List锛孲et鏄紝Map涓嶆槸
36銆佽鍑烘暟鎹繛鎺ユ睜鐨勫伐浣滄満鍒舵槸浠�涔�?
J2EE鏈嶅姟鍣ㄥ惎鍔ㄦ椂浼氬缓绔嬩竴瀹氭暟閲忕殑姹犺繛鎺ワ紝骞朵竴鐩寸淮鎸佷笉灏戜簬姝ゆ暟鐩殑姹犺繛鎺ャ�傚鎴风绋嬪簭闇�瑕佽繛鎺ユ椂锛屾睜椹卞姩绋嬪簭浼氳繑鍥炰竴涓湭浣跨敤鐨勬睜杩炴帴骞跺皢鍏惰〃璁颁负蹇欍�傚鏋滃綋鍓嶆病鏈夌┖闂茶繛鎺ワ紝姹犻┍鍔ㄧ▼搴忓氨鏂板缓涓�瀹氭暟閲忕殑杩炴帴锛屾柊寤鸿繛鎺ョ殑鏁伴噺鏈夐厤缃弬鏁板喅瀹氥�傚綋浣跨敤鐨勬睜杩炴帴璋冪敤瀹屾垚鍚庯紝姹犻┍鍔ㄧ▼搴忓皢姝よ繛鎺ヨ〃璁颁负绌洪棽锛屽叾浠栬皟鐢ㄥ氨鍙互浣跨敤杩欎釜杩炴帴銆�
37銆乤bstract鐨刴ethod鏄惁鍙悓鏃舵槸static,鏄惁鍙悓鏃舵槸native锛屾槸鍚﹀彲鍚屾椂鏄痵ynchronized?閮戒笉鑳�
38銆佹暟缁勬湁娌℃湁length()杩欎釜鏂规硶? String鏈夋病鏈塴ength()杩欎釜鏂规硶锛�鏁扮粍娌℃湁length()杩欎釜鏂规硶锛屾湁length鐨勫睘鎬с�係tring鏈夋湁length()杩欎釜鏂规硶銆�
39銆丼et閲岀殑鍏冪礌鏄笉鑳介噸澶嶇殑锛岄偅涔堢敤浠�涔堟柟娉曟潵鍖哄垎閲嶅涓庡惁鍛�? 鏄敤==杩樻槸equals()? 瀹冧滑鏈変綍鍖哄埆?
Set閲岀殑鍏冪礌鏄笉鑳介噸澶嶇殑锛岄偅涔堢敤iterator()鏂规硶鏉ュ尯鍒嗛噸澶嶄笌鍚︺�俥quals()鏄垽璇讳袱涓猄et鏄惁鐩哥瓑銆俥quals()鍜�==鏂规硶鍐冲畾寮曠敤鍊兼槸鍚︽寚鍚戝悓涓�瀵硅薄equals()鍦ㄧ被涓瑕嗙洊锛屼负鐨勬槸褰撲袱涓垎绂荤殑瀵硅薄鐨勫唴瀹瑰拰绫诲瀷鐩搁厤鐨勮瘽锛岃繑鍥炵湡鍊笺��
40銆佹瀯閫犲櫒Constructor鏄惁鍙override?鏋勯�犲櫒Constructor涓嶈兘琚户鎵匡紝鍥犳涓嶈兘閲嶅啓Overriding锛屼絾鍙互琚噸杞絆verloading銆�
41銆佹槸鍚﹀彲浠ョ户鎵縎tring绫�?String绫绘槸final绫绘晠涓嶅彲浠ョ户鎵裤��
42銆乻wtich鏄惁鑳戒綔鐢ㄥ湪byte涓婏紝鏄惁鑳戒綔鐢ㄥ湪long涓婏紝鏄惁鑳戒綔鐢ㄥ湪String涓�?switch锛坋xpr1锛変腑锛宔xpr1鏄竴涓暣鏁拌〃杈惧紡銆傚洜姝や紶閫掔粰 switch 鍜� case 璇彞鐨勫弬鏁板簲璇ユ槸 int銆� short銆� char 鎴栬�� byte銆俵ong,string 閮戒笉鑳戒綔鐢ㄤ簬swtich銆�
43銆乼ry {}閲屾湁涓�涓猺eturn璇彞锛岄偅涔堢揣璺熷湪杩欎釜try鍚庣殑finally {}閲岀殑code浼氫笉浼氳鎵ц锛屼粈涔堟椂鍊欒鎵ц锛屽湪return鍓嶈繕鏄悗?浼氭墽琛岋紝鍦╮eturn鍓嶆墽琛屻��
44銆佺紪绋嬮: 鐢ㄦ渶鏈夋晥鐜囩殑鏂规硶绠楀嚭2涔樹互8绛夋柤鍑�?2 << 3
45銆佷袱涓璞″�肩浉鍚�(x.equals(y) == true)锛屼絾鍗村彲鏈変笉鍚岀殑hash code锛岃繖鍙ヨ瘽瀵逛笉瀵�?涓嶅锛屾湁鐩稿悓鐨刪ash code銆�
46銆佸綋涓�涓璞¤褰撲綔鍙傛暟浼犻�掑埌涓�涓柟娉曞悗锛屾鏂规硶鍙敼鍙樿繖涓璞$殑灞炴�э紝骞跺彲杩斿洖鍙樺寲鍚庣殑缁撴灉锛岄偅涔堣繖閲屽埌搴曟槸鍊间紶閫掕繕鏄紩鐢ㄤ紶閫�?鏄�间紶閫掋�侸ava 缂栫▼璇█鍙湁鍊间紶閫掑弬鏁般�傚綋涓�涓璞″疄渚嬩綔涓轰竴涓弬鏁拌浼犻�掑埌鏂规硶涓椂锛屽弬鏁扮殑鍊煎氨鏄璇ュ璞$殑寮曠敤銆傚璞$殑鍐呭鍙互鍦ㄨ璋冪敤鐨勬柟娉曚腑鏀瑰彉锛屼絾瀵硅薄鐨勫紩鐢ㄦ槸姘歌繙涓嶄細鏀瑰彉鐨勩��
47銆佸綋涓�涓嚎绋嬭繘鍏ヤ竴涓璞$殑涓�涓猻ynchronized鏂规硶鍚庯紝鍏跺畠绾跨▼鏄惁鍙繘鍏ユ瀵硅薄鐨勫叾瀹冩柟娉�?
涓嶈兘锛屼竴涓璞$殑涓�涓猻ynchronized鏂规硶鍙兘鐢变竴涓嚎绋嬭闂��
48銆佺紪绋嬮: 鍐欎竴涓猄ingleton鍑烘潵銆�
Singleton妯″紡涓昏浣滅敤鏄繚璇佸湪Java搴旂敤绋嬪簭涓紝涓�涓被Class鍙湁涓�涓疄渚嬪瓨鍦ㄣ�備竴鑸琒ingleton妯″紡閫氬父鏈夊嚑绉嶇褰㈠紡:绗竴绉嶅舰寮�: 瀹氫箟涓�涓被锛屽畠鐨勬瀯閫犲嚱鏁颁负private鐨勶紝瀹冩湁涓�涓猻tatic鐨刾rivate鐨勮绫诲彉閲忥紝鍦ㄧ被鍒濆鍖栨椂瀹炰緥璇濓紝閫氳繃涓�涓猵ublic鐨刧etInstance鏂规硶鑾峰彇瀵瑰畠鐨勫紩鐢�,缁ц�岃皟鐢ㄥ叾涓殑鏂规硶銆俻ublic class Singleton {private Singleton(){}private static Singleton instance = new Singleton();聽 public static Singleton getInstance() {聽 return instance; 銆�銆�}}绗簩绉嶅舰寮�:public class Singleton {private static Singleton instance = null;聽 public static synchronized Singleton getInstance() {銆�if (instance==null)銆�instance锛漬ew Singleton();
return instance; 銆�銆�}}鍏朵粬褰㈠紡:聽 瀹氫箟涓�涓被锛屽畠鐨勬瀯閫犲嚱鏁颁负private鐨勶紝鎵�鏈夋柟娉曚负static鐨勩�備竴鑸涓虹涓�绉嶅舰寮忚鏇村姞瀹夊叏浜�
49銆丣ava鐨勬帴鍙e拰C++鐨勮櫄绫荤殑鐩稿悓鍜屼笉鍚屽銆�
鐢变簬Java涓嶆敮鎸佸缁ф壙锛岃�屾湁鍙兘鏌愪釜绫绘垨瀵硅薄瑕佷娇鐢ㄥ垎鍒湪鍑犱釜绫绘垨瀵硅薄閲岄潰鐨勬柟娉曟垨灞炴�э紝鐜版湁鐨勫崟缁ф壙鏈哄埗灏变笉鑳芥弧瓒宠姹傘�備笌缁ф壙鐩告瘮锛屾帴鍙f湁鏇撮珮鐨勭伒娲绘�э紝鍥犱负鎺ュ彛涓病鏈変换浣曞疄鐜颁唬鐮併�傚綋涓�涓被瀹炵幇浜嗘帴鍙d互鍚庯紝璇ョ被瑕佸疄鐜版帴鍙i噷闈㈡墍鏈夌殑鏂规硶鍜屽睘鎬э紝骞朵笖鎺ュ彛閲岄潰鐨勫睘鎬у湪榛樿鐘舵�佷笅闈㈤兘鏄痯ublic static,鎵�鏈夋柟娉曢粯璁ゆ儏鍐典笅鏄痯ublic.涓�涓被鍙互瀹炵幇澶氫釜鎺ュ彛銆�
50銆丣ava涓殑寮傚父澶勭悊鏈哄埗鐨勭畝鍗曞師鐞嗗拰搴旂敤銆�
褰揓AVA绋嬪簭杩濆弽浜咼AVA鐨勮涔夎鍒欐椂锛孞AVA铏氭嫙鏈哄氨浼氬皢鍙戠敓鐨勯敊璇〃绀轰负涓�涓紓甯搞�傝繚鍙嶈涔夎鍒欏寘鎷�2绉嶆儏鍐点�備竴绉嶆槸JAVA绫诲簱鍐呯疆鐨勮涔夋鏌ャ�備緥濡傛暟缁勪笅鏍囪秺鐣�,浼氬紩鍙慖ndexOutOfBoundsException;璁块棶null鐨勫璞℃椂浼氬紩鍙慛ullPointerException銆傚彟涓�绉嶆儏鍐靛氨鏄疛AVA鍏佽绋嬪簭鍛樻墿灞曡繖绉嶈涔夋鏌ワ紝绋嬪簭鍛樺彲浠ュ垱寤鸿嚜宸辩殑寮傚父锛屽苟鑷敱閫夋嫨鍦ㄤ綍鏃剁敤throw鍏抽敭瀛楀紩鍙戝紓甯搞�傛墍鏈夌殑寮傚父閮芥槸java.lang.Thowable鐨勫瓙绫汇��
51銆佸瀮鍦惧洖鏀剁殑浼樼偣鍜屽師鐞嗐�傚苟鑰冭檻2绉嶅洖鏀舵満鍒躲��
Java璇█涓竴涓樉钁楃殑鐗圭偣灏辨槸寮曞叆浜嗗瀮鍦惧洖鏀舵満鍒讹紝浣縞++绋嬪簭鍛樻渶澶寸柤鐨勫唴瀛樼鐞嗙殑闂杩庡垉鑰岃В锛屽畠浣垮緱Java绋嬪簭鍛樺湪缂栧啓绋嬪簭鐨勬椂鍊欎笉鍐嶉渶瑕佽�冭檻鍐呭瓨绠$悊銆傜敱浜庢湁涓瀮鍦惧洖鏀舵満鍒讹紝Java涓殑瀵硅薄涓嶅啀鏈夆�滀綔鐢ㄥ煙鈥濈殑姒傚康锛屽彧鏈夊璞$殑寮曠敤鎵嶆湁鈥滀綔鐢ㄥ煙鈥濄�傚瀮鍦惧洖鏀跺彲浠ユ湁鏁堢殑闃叉鍐呭瓨娉勯湶锛屾湁鏁堢殑浣跨敤鍙互浣跨敤鐨勫唴瀛樸�傚瀮鍦惧洖鏀跺櫒閫氬父鏄綔涓轰竴涓崟鐙殑浣庣骇鍒殑绾跨▼杩愯锛屼笉鍙鐭ョ殑鎯呭喌涓嬪鍐呭瓨鍫嗕腑宸茬粡姝讳骸鐨勬垨鑰呴暱鏃堕棿娌℃湁浣跨敤鐨勫璞¤繘琛屾竻妤氬拰鍥炴敹锛岀▼搴忓憳涓嶈兘瀹炴椂鐨勮皟鐢ㄥ瀮鍦惧洖鏀跺櫒瀵规煇涓璞℃垨鎵�鏈夊璞¤繘琛屽瀮鍦惧洖鏀躲�傚洖鏀舵満鍒舵湁鍒嗕唬澶嶅埗鍨冨溇鍥炴敹鍜屾爣璁板瀮鍦惧洖鏀讹紝澧為噺鍨冨溇鍥炴敹銆�
52銆佽璇村嚭浣犳墍鐭ラ亾鐨勭嚎绋嬪悓姝ョ殑鏂规硶銆�
wait():浣夸竴涓嚎绋嬪浜庣瓑寰呯姸鎬侊紝骞朵笖閲婃斁鎵�鎸佹湁鐨勫璞$殑lock銆俿leep():浣夸竴涓鍦ㄨ繍琛岀殑绾跨▼澶勪簬鐫$湢鐘舵�侊紝鏄竴涓潤鎬佹柟娉曪紝璋冪敤姝ゆ柟娉曡鎹曟崏InterruptedException寮傚父銆俷otify():鍞ら啋涓�涓浜庣瓑寰呯姸鎬佺殑绾跨▼锛屾敞鎰忕殑鏄湪璋冪敤姝ゆ柟娉曠殑鏃跺�欙紝骞朵笉鑳界‘鍒囩殑鍞ら啋鏌愪竴涓瓑寰呯姸鎬佺殑绾跨▼锛岃�屾槸鐢盝VM纭畾鍞ら啋鍝釜绾跨▼锛岃�屼笖涓嶆槸鎸変紭鍏堢骇銆侫llnotity():鍞ら啋鎵�鏈夊鍏ョ瓑寰呯姸鎬佺殑绾跨▼锛屾敞鎰忓苟涓嶆槸缁欐墍鏈夊敜閱掔嚎绋嬩竴涓璞$殑閿侊紝鑰屾槸璁╁畠浠珵浜夈��
53銆佷綘鎵�鐭ラ亾鐨勯泦鍚堢被閮芥湁鍝簺锛熶富瑕佹柟娉曪紵鏈�甯哥敤鐨勯泦鍚堢被鏄疞ist 鍜� Map銆� List 鐨勫叿浣撳疄鐜板寘鎷� ArrayList 鍜� Vector锛屽畠浠槸鍙彉澶у皬鐨勫垪琛紝姣旇緝閫傚悎鏋勫缓銆佸瓨鍌ㄥ拰鎿嶄綔浠讳綍绫诲瀷瀵硅薄鐨勫厓绱犲垪琛ㄣ�� List 閫傜敤浜庢寜鏁板�肩储寮曡闂厓绱犵殑鎯呭舰銆� Map 鎻愪緵浜嗕竴涓洿閫氱敤鐨勫厓绱犲瓨鍌ㄦ柟娉曘�� Map 闆嗗悎绫荤敤浜庡瓨鍌ㄥ厓绱犲锛堢О浣溾�滈敭鈥濆拰鈥滃�尖�濓級锛屽叾涓瘡涓敭鏄犲皠鍒颁竴涓�笺��
54銆佹弿杩颁竴涓婮VM鍔犺浇class鏂囦欢鐨勫師鐞嗘満鍒�?JVM涓被鐨勮杞芥槸鐢盋lassLoader鍜屽畠鐨勫瓙绫绘潵瀹炵幇鐨�,Java ClassLoader 鏄竴涓噸瑕佺殑Java杩愯鏃剁郴缁熺粍浠躲�傚畠璐熻矗鍦ㄨ繍琛屾椂鏌ユ壘鍜岃鍏ョ被鏂囦欢鐨勭被銆�
55銆乧har鍨嬪彉閲忎腑鑳戒笉鑳藉瓨璐竴涓腑鏂囨眽瀛�?涓轰粈涔�?
鑳藉瀹氫箟鎴愪负涓�涓腑鏂囩殑锛屽洜涓簀ava涓互unicode缂栫爜锛屼竴涓猚har鍗�16涓瓧鑺傦紝鎵�浠ユ斁涓�涓腑鏂囨槸娌¢棶棰樼殑
56銆佸绾跨▼鏈夊嚑绉嶅疄鐜版柟娉�,閮芥槸浠�涔�?鍚屾鏈夊嚑绉嶅疄鐜版柟娉�,閮芥槸浠�涔�?
澶氱嚎绋嬫湁涓ょ瀹炵幇鏂规硶锛屽垎鍒槸缁ф壙Thread绫讳笌瀹炵幇Runnable鎺ュ彛 ,鍚屾鐨勫疄鐜版柟闈㈡湁涓ょ锛屽垎鍒槸synchronized,wait涓巒otify
57銆丣SP鐨勫唴缃璞″強鏂规硶銆�
request琛ㄧずHttpServletRequest瀵硅薄銆傚畠鍖呭惈浜嗘湁鍏虫祻瑙堝櫒璇锋眰鐨勪俊鎭紝骞朵笖鎻愪緵浜嗗嚑涓敤浜庤幏鍙朿ookie, header, 鍜宻ession鏁版嵁鐨勬湁鐢ㄧ殑鏂规硶,
response琛ㄧずHttpServletResponse瀵硅薄锛屽苟鎻愪緵浜嗗嚑涓敤浜庤缃�佸洖 娴忚鍣ㄧ殑鍝嶅簲鐨勬柟娉曪紙濡俢ookies,澶翠俊鎭瓑锛�
out瀵硅薄鏄痡avax.jsp.JspWriter鐨勪竴涓疄渚嬶紝骞舵彁渚涗簡鍑犱釜鏂规硶浣夸綘鑳界敤浜庡悜娴忚鍣ㄥ洖閫佽緭鍑虹粨鏋溿��
pageContext琛ㄧず涓�涓猨avax.servlet.jsp.PageContext瀵硅薄銆傚畠鏄敤浜庢柟渚垮瓨鍙栧悇绉嶈寖鍥寸殑鍚嶅瓧绌洪棿銆乻ervlet鐩稿叧鐨勫璞$殑API锛屽苟涓斿寘瑁呬簡閫氱敤鐨剆ervlet鐩稿叧鍔熻兘鐨勬柟娉曘��
聽 session琛ㄧず涓�涓姹傜殑javax.servlet.http.HttpSession瀵硅薄銆係ession鍙互瀛樿串鐢ㄦ埛鐨勭姸鎬佷俊鎭�
applicaton 琛ㄧず涓�涓猨avax.servle.ServletContext瀵硅薄銆傝繖鏈夊姪浜庢煡鎵炬湁鍏硈ervlet寮曟搸鍜宻ervlet鐜鐨勪俊鎭� config琛ㄧず涓�涓猨avax.servlet.ServletConfig瀵硅薄銆傝瀵硅薄鐢ㄤ簬瀛樺彇servlet瀹炰緥鐨勫垵濮嬪寲鍙傛暟銆�
page琛ㄧず浠庤椤甸潰浜х敓鐨勪竴涓猻ervlet瀹炰緥
58銆佺嚎绋嬬殑鍩烘湰姒傚康銆佺嚎绋嬬殑鍩烘湰鐘舵�佷互鍙婄姸鎬佷箣闂寸殑鍏崇郴绾跨▼鎸囧湪绋嬪簭鎵ц杩囩▼涓紝鑳藉鎵ц绋嬪簭浠g爜鐨勪竴涓墽琛屽崟浣嶏紝姣忎釜绋嬪簭鑷冲皯閮芥湁涓�涓嚎绋嬶紝涔熷氨鏄▼搴忔湰韬�侸ava涓殑绾跨▼鏈夊洓绉嶇姸鎬佸垎鍒槸锛氳繍琛屻�佸氨缁�佹寕璧枫�佺粨鏉熴��
59銆丣SP鐨勫父鐢ㄦ寚浠�<%@page language=鈥漥ava鈥� contenType=鈥漷ext/html;charset=gb2312鈥� session=鈥漷rue鈥� buffer=鈥�64kb鈥� autoFlush=鈥漷rue鈥� isThreadSafe=鈥漷rue鈥� info=鈥漷ext鈥� errorPage=鈥漞rror.jsp鈥� isErrorPage=鈥漷rue鈥� isELIgnored=鈥漷rue鈥� pageEncoding=鈥漡b2312鈥� import=鈥漥ava.sql.*鈥�%>isErrorPage(鏄惁鑳戒娇鐢‥xception瀵硅薄)锛宨sELIgnored(鏄惁蹇界暐琛ㄨ揪寮�)<%@include file=鈥漟ilename鈥�%><%@taglib prefix=鈥漜鈥漸ri=鈥漢ttp://鈥︹�︹��%>
60銆佷粈涔堟儏鍐典笅璋冪敤doGet()鍜宒oPost()锛�Jsp椤甸潰涓殑form鏍囩閲岀殑method灞炴�т负get鏃惰皟鐢╠oGet()锛屼负post鏃惰皟鐢╠oPost()銆�
61銆乻ervlet鐨勭敓鍛藉懆鏈�web瀹瑰櫒鍔犺浇servlet锛岀敓鍛藉懆鏈熷紑濮嬨�傞�氳繃璋冪敤servlet鐨刬nit()鏂规硶杩涜servlet鐨勫垵濮嬪寲銆傞�氳繃璋冪敤service()鏂规硶瀹炵幇锛屾牴鎹姹傜殑涓嶅悓璋冪敤涓嶅悓鐨刣o***()鏂规硶銆傜粨鏉熸湇鍔★紝web瀹瑰櫒璋冪敤servlet鐨刣estroy()鏂规硶銆�
62銆佸浣曠幇瀹瀞ervlet鐨勫崟绾跨▼妯″紡<%@ page isThreadSafe=鈥漟alse鈥�%>
63銆侀〉闈㈤棿瀵硅薄浼犻�掔殑鏂规硶request锛宻ession锛宎pplication锛宑ookie绛�
64銆丣SP鍜孲ervlet鏈夊摢浜涚浉鍚岀偣鍜屼笉鍚岀偣锛屼粬浠箣闂寸殑鑱旂郴鏄粈涔堬紵
JSP鏄疭ervlet鎶�鏈殑鎵╁睍锛屾湰璐ㄤ笂鏄疭ervlet鐨勭畝鏄撴柟寮忥紝鏇村己璋冨簲鐢ㄧ殑澶栬〃琛ㄨ揪銆侸SP缂栬瘧鍚庢槸"绫籹ervlet"銆係ervlet鍜孞SP鏈�涓昏鐨勪笉鍚岀偣鍦ㄤ簬锛孲ervlet鐨勫簲鐢ㄩ�昏緫鏄湪Java鏂囦欢涓紝骞朵笖瀹屽叏浠庤〃绀哄眰涓殑HTML閲屽垎绂诲紑鏉ャ�傝�孞SP鐨勬儏鍐垫槸Java鍜孒TML鍙互缁勫悎鎴愪竴涓墿灞曞悕涓�.jsp鐨勬枃浠躲�侸SP渚ч噸浜庤鍥撅紝Servlet涓昏鐢ㄤ簬鎺у埗閫昏緫銆�
65銆佸洓绉嶄細璇濊窡韪妧鏈�cookie,url閲嶅啓,session,闅愯棌鍩�
65,jsp鐨勫洓绉嶈寖鍥�
page鍚︽槸浠h〃涓庝竴涓〉闈㈢浉鍏崇殑瀵硅薄鍜屽睘鎬с�備竴涓〉闈㈢敱涓�涓紪璇戝ソ鐨� Java servlet 绫伙紙鍙互甯︽湁浠讳綍鐨� include 鎸囦护锛屼絾鏄病鏈� include 鍔ㄤ綔锛夎〃绀恒�傝繖鏃㈠寘鎷� servlet 鍙堝寘鎷缂栬瘧鎴� servlet 鐨� JSP 椤甸潰
request鏄槸浠h〃涓� Web 瀹㈡埛鏈哄彂鍑虹殑涓�涓姹傜浉鍏崇殑瀵硅薄鍜屽睘鎬с�備竴涓姹傚彲鑳借法瓒婂涓〉闈紝娑夊強澶氫釜 Web 缁勪欢锛堢敱浜� forward 鎸囦护鍜� include 鍔ㄤ綔鐨勫叧绯伙級
session鏄槸浠h〃涓庣敤浜庢煇涓� Web 瀹㈡埛鏈虹殑涓�涓敤鎴蜂綋楠岀浉鍏崇殑瀵硅薄鍜屽睘鎬с�備竴涓� Web 浼氳瘽鍙互涔熺粡甯镐細璺ㄨ秺澶氫釜瀹㈡埛鏈鸿姹�
application鏄槸浠h〃涓庢暣涓� Web 搴旂敤绋嬪簭鐩稿叧鐨勫璞″拰灞炴�с�傝繖瀹炶川涓婃槸璺ㄨ秺鏁翠釜 Web 搴旂敤绋嬪簭锛屽寘鎷涓〉闈€�佽姹傚拰浼氳瘽鐨勪竴涓叏灞�浣滅敤鍩�
66銆丷equest瀵硅薄鐨勪富瑕佹柟娉曪細
setAttribute(String name,Object)锛氳缃悕瀛椾负name鐨剅equest鐨勫弬鏁板��
getAttribute(String name)锛氳繑鍥炵敱name鎸囧畾鐨勫睘鎬у��
getAttributeNames()锛氳繑鍥瀝equest瀵硅薄鎵�鏈夊睘鎬х殑鍚嶅瓧闆嗗悎锛岀粨鏋滄槸涓�涓灇涓剧殑瀹炰緥
getCookies()锛氳繑鍥炲鎴风鐨勬墍鏈塁ookie瀵硅薄锛岀粨鏋滄槸涓�涓狢ookie鏁扮粍
getCharacterEncoding()锛氳繑鍥炶姹備腑鐨勫瓧绗︾紪鐮佹柟寮�
getContentLength()锛氳繑鍥炶姹傜殑Body鐨勯暱搴�
getHeader(String name)锛氳幏寰桯TTP鍗忚瀹氫箟鐨勬枃浠跺ご淇℃伅
getHeaders(String name)锛氳繑鍥炴寚瀹氬悕瀛楃殑request Header鐨勬墍鏈夊�硷紝缁撴灉鏄竴涓灇涓剧殑瀹炰緥
getHeaderNames()锛氳繑鍥炴墍浠equest Header鐨勫悕瀛楋紝缁撴灉鏄竴涓灇涓剧殑瀹炰緥
getInputStream()锛氳繑鍥炶姹傜殑杈撳叆娴侊紝鐢ㄤ簬鑾峰緱璇锋眰涓殑鏁版嵁
getMethod()锛氳幏寰楀鎴风鍚戞湇鍔″櫒绔紶閫佹暟鎹殑鏂规硶
getParameter(String name)锛氳幏寰楀鎴风浼犻�佺粰鏈嶅姟鍣ㄧ鐨勬湁name鎸囧畾鐨勫弬鏁板��
getParameterNames()锛氳幏寰楀鎴风浼犻�佺粰鏈嶅姟鍣ㄧ鐨勬墍鏈夊弬鏁扮殑鍚嶅瓧锛岀粨鏋滄槸涓�涓灇涓剧殑瀹炰緥
getParameterValues(String name)锛氳幏寰楁湁name鎸囧畾鐨勫弬鏁扮殑鎵�鏈夊��
getProtocol()锛氳幏鍙栧鎴风鍚戞湇鍔″櫒绔紶閫佹暟鎹墍渚濇嵁鐨勫崗璁悕绉�
getQueryString()锛氳幏寰楁煡璇㈠瓧绗︿覆
getRequestURI()锛氳幏鍙栧彂鍑鸿姹傚瓧绗︿覆鐨勫鎴风鍦板潃
getRemoteAddr()锛氳幏鍙栧鎴风鐨処P鍦板潃
getRemoteHost()锛氳幏鍙栧鎴风鐨勫悕瀛�
getSession([Boolean create])锛氳繑鍥炲拰璇锋眰鐩稿叧Session
getServerName()锛氳幏鍙栨湇鍔″櫒鐨勫悕瀛�
getServletPath()锛氳幏鍙栧鎴风鎵�璇锋眰鐨勮剼鏈枃浠剁殑璺緞
getServerPort()锛氳幏鍙栨湇鍔″櫒鐨勭鍙e彿
removeAttribute(String name)锛氬垹闄よ姹備腑鐨勪竴涓睘鎬�
67銆丣2EE鏄妧鏈繕鏄钩鍙拌繕鏄鏋讹紵J2EE鏈韩鏄竴涓爣鍑嗭紝涓�涓负浼佷笟鍒嗗竷寮忓簲鐢ㄧ殑寮�鍙戞彁渚涚殑鏍囧噯骞冲彴銆�
J2EE涔熸槸涓�涓鏋讹紝鍖呮嫭JDBC銆丣NDI銆丷MI銆丣MS銆丒JB銆丣TA绛夋妧鏈��
68銆佹垜浠湪web搴旂敤寮�鍙戣繃绋嬩腑缁忓父閬囧埌杈撳嚭鏌愮缂栫爜鐨勫瓧绗︼紝濡俰so8859-1绛夛紝濡備綍杈撳嚭涓�涓煇绉嶇紪鐮佺殑瀛楃涓诧紵
Public String translate (String str) {String tempStr = "";try { tempStr = new String(str.getBytes("ISO-8859-1"), "GBK");tempStr = tempStr.trim();} catch (Exception e) {聽 System.err.println(e.getMessage());聽 } return tempStr;聽 }
69銆佺畝杩伴�昏緫鎿嶄綔(&,|,^)涓庢潯浠舵搷浣�(&&,||)鐨勫尯鍒��鍖哄埆涓昏绛斾袱鐐癸細a.鏉′欢鎿嶄綔鍙兘鎿嶄綔甯冨皵鍨嬬殑,鑰岄�昏緫鎿嶄綔涓嶄粎鍙互鎿嶄綔甯冨皵鍨�,鑰屼笖鍙互鎿嶄綔鏁板�煎瀷b.閫昏緫鎿嶄綔涓嶄細浜х敓鐭矾
70銆乆ML鏂囨。瀹氫箟鏈夊嚑绉嶅舰寮忥紵瀹冧滑涔嬮棿鏈変綍鏈川鍖哄埆锛熻В鏋怷ML鏂囨。鏈夊摢鍑犵鏂瑰紡锛�
a: 涓ょ褰㈠紡 dtd聽 schema锛宐: 鏈川鍖哄埆:schema鏈韩鏄痻ml鐨勶紝鍙互琚玐ML瑙f瀽鍣ㄨВ鏋�(杩欎篃鏄粠DTD涓婂彂灞晄chema鐨勬牴鏈洰鐨�)锛宑:鏈塂OM,SAX,STAX绛壜� DOM:澶勭悊澶у瀷鏂囦欢鏃跺叾鎬ц兘涓嬮檷鐨勯潪甯稿帀瀹炽�傝繖涓棶棰樻槸鐢盌OM鐨勬爲缁撴瀯鎵�閫犳垚鐨勶紝杩欑缁撴瀯鍗犵敤鐨勫唴瀛樿緝澶氾紝鑰屼笖DOM蹇呴』鍦ㄨВ鏋愭枃浠朵箣鍓嶆妸鏁翠釜鏂囨。瑁呭叆鍐呭瓨,閫傚悎瀵筙ML鐨勯殢鏈鸿闂� SAX:涓嶇幇浜嶥OM,SAX鏄簨浠堕┍鍔ㄥ瀷鐨刋ML瑙f瀽鏂瑰紡銆傚畠椤哄簭璇诲彇XML鏂囦欢锛屼笉闇�瑕佷竴娆″叏閮ㄨ杞芥暣涓枃浠躲�傚綋閬囧埌鍍忔枃浠跺紑澶达紝鏂囨。缁撴潫锛屾垨鑰呮爣绛惧紑澶翠笌鏍囩缁撴潫鏃讹紝瀹冧細瑙﹀彂涓�涓簨浠讹紝鐢ㄦ埛閫氳繃鍦ㄥ叾鍥炶皟浜嬩欢涓啓鍏ュ鐞嗕唬鐮佹潵澶勭悊XML鏂囦欢锛岄�傚悎瀵筙ML鐨勯『搴忚闂甋TAX:Streaming API for XML (StAX)
71銆佺畝杩皊ynchronized鍜宩ava.util.concurrent.locks.Lock鐨勫紓鍚� 锛�
涓昏鐩稿悓鐐癸細Lock鑳藉畬鎴恠ynchronized鎵�瀹炵幇鐨勬墍鏈夊姛鑳戒富瑕佷笉鍚岀偣锛歀ock鏈夋瘮synchronized鏇寸簿纭殑绾跨▼璇箟鍜屾洿濂界殑鎬ц兘銆俿ynchronized浼氳嚜鍔ㄩ噴鏀鹃攣锛岃�孡ock涓�瀹氳姹傜▼搴忓憳鎵嬪伐閲婃斁锛屽苟涓斿繀椤诲湪finally浠庡彞涓噴鏀俱��
72銆丒JB鐨勮鑹插拰涓変釜瀵硅薄
涓�涓畬鏁寸殑鍩轰簬EJB鐨勫垎甯冨紡璁$畻缁撴瀯鐢卞叚涓鑹茬粍鎴愶紝杩欏叚涓鑹插彲浠ョ敱涓嶅悓鐨勫紑鍙戝晢鎻愪緵锛屾瘡涓鑹叉墍浣滅殑宸ヤ綔蹇呴』閬靛惊Sun鍏徃鎻愪緵鐨凟JB瑙勮寖锛屼互淇濊瘉褰兼涔嬮棿鐨勫吋瀹规�с�傝繖鍏釜瑙掕壊鍒嗗埆鏄疎JB缁勪欢寮�鍙戣�咃紙Enterprise Bean Provider锛� 銆佸簲鐢ㄧ粍鍚堣�咃紙Application Assembler锛夈�侀儴缃茶�咃紙Deployer锛夈�丒JB 鏈嶅姟鍣ㄦ彁渚涜�咃紙EJB Server Provider锛夈�丒JB 瀹瑰櫒鎻愪緵鑰咃紙EJB Container Provider锛夈�佺郴缁熺鐞嗗憳锛圫ystem Administrator锛変笁涓璞℃槸Remote锛圠ocal锛夋帴鍙c�丠ome锛圠ocalHome锛夋帴鍙o紝Bean绫�
73銆丒JB瀹瑰櫒鎻愪緵鐨勬湇鍔�涓昏鎻愪緵澹版槑鍛ㄦ湡绠$悊銆佷唬鐮佷骇鐢熴�佹寔缁�х鐞嗐�佸畨鍏ㄣ�佷簨鍔$鐞嗐�侀攣鍜屽苟鍙戣绠$悊绛夋湇鍔°��
74銆丒JB瑙勮寖瑙勫畾EJB涓姝㈢殑鎿嶄綔鏈夊摢浜涳紵1.涓嶈兘鎿嶄綔绾跨▼鍜岀嚎绋婣PI(绾跨▼API鎸囬潪绾跨▼瀵硅薄鐨勬柟娉曞notify,wait绛�)锛�2.涓嶈兘鎿嶄綔awt锛�3.涓嶈兘瀹炵幇鏈嶅姟鍣ㄥ姛鑳斤紝4.涓嶈兘瀵归潤鎬佸睘鐢熷瓨鍙栵紝5.涓嶈兘浣跨敤IO鎿嶄綔鐩存帴瀛樺彇鏂囦欢绯荤粺锛�6.涓嶈兘鍔犺浇鏈湴搴�.锛�7.涓嶈兘灏唗his浣滀负鍙橀噺鍜岃繑鍥烇紝8.涓嶈兘寰幆璋冪敤銆�
75銆乺emote鎺ュ彛鍜宧ome鎺ュ彛涓昏浣滅敤remote鎺ュ彛瀹氫箟浜嗕笟鍔℃柟娉曪紝鐢ㄤ簬EJB瀹㈡埛绔皟鐢ㄤ笟鍔℃柟娉曘�俬ome鎺ュ彛鏄疎JB宸ュ巶鐢ㄤ簬鍒涘缓鍜岀Щ闄ゆ煡鎵綞JB瀹炰緥
76銆乥ean 瀹炰緥鐨勭敓鍛藉懆鏈�瀵逛簬Stateless Session Bean銆丒ntity Bean銆丮essage Driven Bean涓�鑸瓨鍦ㄧ紦鍐叉睜绠$悊锛岃�屽浜嶦ntity Bean鍜孲tatefull Session Bean瀛樺湪Cache绠$悊锛岄�氬父鍖呭惈鍒涘缓瀹炰緥锛岃缃笂涓嬫枃銆佸垱寤篍JB Object锛坈reate锛夈�佷笟鍔℃柟娉曡皟鐢ㄣ�乺emove绛夎繃绋嬶紝瀵逛簬瀛樺湪缂撳啿姹犵鐞嗙殑Bean锛屽湪create涔嬪悗瀹炰緥骞朵笉浠庡唴瀛樻竻闄わ紝鑰屾槸閲囩敤缂撳啿姹犺皟搴︽満鍒朵笉鏂噸鐢ㄥ疄渚嬶紝鑰屽浜庡瓨鍦–ache绠$悊鐨凚ean鍒欓�氳繃婵�娲诲拰鍘绘縺娲绘満鍒朵繚鎸丅ean鐨勭姸鎬佸苟闄愬埗鍐呭瓨涓疄渚嬫暟閲忋��
77銆丒JB鐨勬縺娲绘満鍒�浠tateful Session Bean 涓轰緥锛氬叾Cache澶у皬鍐冲畾浜嗗唴瀛樹腑鍙互鍚屾椂瀛樺湪鐨凚ean瀹炰緥鐨勬暟閲忥紝鏍规嵁MRU鎴朜RU绠楁硶锛屽疄渚嬪湪婵�娲诲拰鍘绘縺娲荤姸鎬佷箣闂磋縼绉伙紝婵�娲绘満鍒舵槸褰撳鎴风璋冪敤鏌愪釜EJB瀹炰緥涓氬姟鏂规硶鏃讹紝濡傛灉瀵瑰簲EJB Object鍙戠幇鑷繁娌℃湁缁戝畾瀵瑰簲鐨凚ean瀹炰緥鍒欎粠鍏跺幓婵�娲籅ean瀛樺偍涓紙閫氳繃搴忓垪鍖栨満鍒跺瓨鍌ㄥ疄渚嬶級鍥炲锛堟縺娲伙級姝ゅ疄渚嬨�傜姸鎬佸彉杩佸墠浼氳皟鐢ㄥ搴旂殑ejbActive鍜宔jbPassivate鏂规硶銆�
78銆丒JB鐨勫嚑绉嶇被鍨�浼氳瘽锛圫ession锛塀ean 锛屽疄浣擄紙Entity锛塀ean 娑堟伅椹卞姩鐨勶紙Message Driven锛塀ean聽 锛涗細璇滲ean鍙堝彲鍒嗕负鏈夌姸鎬侊紙Stateful锛夊拰鏃犵姸鎬侊紙Stateless锛変袱绉嶏紱瀹炰綋Bean鍙垎涓築ean绠$悊鐨勬寔缁�э紙BMP锛夊拰瀹瑰櫒绠$悊鐨勬寔缁�э紙CMP锛変袱绉�
79銆佸鏈嶇璋冪敤EJB瀵硅薄鐨勫嚑涓熀鏈楠�璁剧疆JNDI鏈嶅姟宸ュ巶浠ュ強JNDI鏈嶅姟鍦板潃绯荤粺灞炴�э紝鏌ユ壘Home鎺ュ彛锛屼粠Home鎺ュ彛璋冪敤Create鏂规硶鍒涘缓Remote鎺ュ彛锛岄�氳繃Remote鎺ュ彛璋冪敤鍏朵笟鍔℃柟娉曘��
80銆佸浣曠粰weblogic鎸囧畾澶у皬鐨勫唴瀛�?鍦ㄥ惎鍔╓eblogic鐨勮剼鏈腑锛堜綅浜庢墍鍦―omian瀵瑰簲鏈嶅姟鍣ㄧ洰褰曚笅鐨剆tartServerName锛夛紝澧炲姞set MEM_ARGS=-Xms32m -Xmx200m锛屽彲浠ヨ皟鏁存渶灏忓唴瀛樹负32M锛屾渶澶�200M
81銆佸浣曡瀹氱殑weblogic鐨勭儹鍚姩妯″紡(寮�鍙戞ā寮�)涓庝骇鍝佸彂甯冩ā寮�?鍙互鍦ㄧ鐞嗘帶鍒跺彴涓慨鏀瑰搴旀湇鍔″櫒鐨勫惎鍔ㄦā寮忎负寮�鍙戞垨浜у搧妯″紡涔嬩竴銆傛垨鑰呬慨鏀规湇鍔$殑鍚姩鏂囦欢鎴栬�卌ommenv鏂囦欢锛屽鍔爏et PRODUCTION_MODE=true銆�
82銆佸浣曞惎鍔ㄦ椂涓嶉渶杈撳叆鐢ㄦ埛鍚嶄笌瀵嗙爜?淇敼鏈嶅姟鍚姩鏂囦欢锛屽鍔燱LS_USER鍜學LS_PW椤广�備篃鍙互鍦╞oot.properties鏂囦欢涓鍔犲姞瀵嗚繃鐨勭敤鎴峰悕鍜屽瘑鐮�.
83銆佸湪weblogic绠$悊鍒跺彴涓涓�涓簲鐢ㄥ煙(鎴栬�呰鏄竴涓綉绔�,Domain)杩涜jms鍙奺jb鎴栬繛鎺ユ睜绛夌浉鍏充俊鎭繘琛岄厤缃悗,瀹為檯淇濆瓨鍦ㄤ粈涔堟枃浠朵腑?淇濆瓨鍦ㄦDomain鐨刢onfig.xml鏂囦欢涓紝瀹冩槸鏈嶅姟鍣ㄧ殑鏍稿績閰嶇疆鏂囦欢銆�
84銆佽璇磜eblogic涓竴涓狣omain鐨勭己鐪佺洰褰曠粨鏋�?姣斿瑕佸皢涓�涓畝鍗曠殑helloWorld.jsp鏀惧叆浣曠洰褰曚笅,鐒剁殑鍦ㄦ祻瑙堝櫒涓婂氨鍙墦鍏ttp://涓绘満:绔彛鍙�//helloword.jsp灏卞彲浠ョ湅鍒拌繍琛岀粨鏋滀簡? 鍙堟瘮濡傝繖鍏朵腑鐢ㄥ埌浜嗕竴涓嚜宸卞啓鐨刯avaBean璇ュ浣曞姙?
Domain鐩綍\鏈嶅姟鍣ㄧ洰褰昞applications锛屽皢搴旂敤鐩綍鏀惧湪姝ょ洰褰曚笅灏嗗彲浠ヤ綔涓哄簲鐢ㄨ闂紝濡傛灉鏄疻eb搴旂敤锛屽簲鐢ㄧ洰褰曢渶瑕佹弧瓒砏eb搴旂敤鐩綍瑕佹眰锛宩sp鏂囦欢鍙互鐩存帴鏀惧湪搴旂敤鐩綍涓紝Javabean闇�瑕佹斁鍦ㄥ簲鐢ㄧ洰褰曠殑WEB-INF鐩綍鐨刢lasses鐩綍涓紝璁剧疆鏈嶅姟鍣ㄧ殑缂虹渷搴旂敤灏嗗彲浠ュ疄鐜板湪娴忚鍣ㄤ笂鏃犻渶杈撳叆搴旂敤鍚嶃��
85銆佸湪weblogic涓彂甯僥jb闇�娑夊強鍒板摢浜涢厤缃枃浠�涓嶅悓绫诲瀷鐨凟JB娑夊強鐨勯厤缃枃浠朵笉鍚岋紝閮芥秹鍙婂埌鐨勯厤缃枃浠跺寘鎷琫jb-jar.xml,weblogic-ejb-jar.xmlCMP瀹炰綋Bean涓�鑸繕闇�瑕亀eblogic-cmp-rdbms-jar.xml
86銆佸浣曞湪weblogic涓繘琛宻sl閰嶇疆涓庡鎴风鐨勮璇侀厤缃垨璇磋j2ee(鏍囧噯)杩涜ssl鐨勯厤缃�缂虹渷瀹夎涓娇鐢―emoIdentity.jks鍜孌emoTrust.jks聽 KeyStore瀹炵幇SSL锛岄渶瑕侀厤缃湇鍔″櫒浣跨敤Enable SSL锛岄厤缃叾绔彛锛屽湪浜у搧妯″紡涓嬮渶瑕佷粠CA鑾峰彇绉佹湁瀵嗛挜鍜屾暟瀛楄瘉涔︼紝鍒涘缓identity鍜宼rust keystore锛岃杞借幏寰楃殑瀵嗛挜鍜屾暟瀛楄瘉涔︺�傚彲浠ラ厤缃SSL杩炴帴鏄崟鍚戣繕鏄弻鍚戠殑銆�
87銆佸浣曟煡鐪嬪湪weblogic涓凡缁忓彂甯冪殑EJB?鍙互浣跨敤绠$悊鎺у埗鍙帮紝鍦ㄥ畠鐨凞eployment涓彲浠ユ煡鐪嬫墍鏈夊凡鍙戝竷鐨凟JB
88銆丆ORBA鏄粈涔�?鐢ㄩ�旀槸浠�涔�?CORBA 鏍囧噯鏄叕鍏卞璞¤姹備唬鐞嗙粨鏋�(Common Object Request Broker Architecture)锛岀敱瀵硅薄绠$悊缁勭粐 (Object Management Group锛岀缉鍐欎负 OMG)鏍囧噯鍖栥�傚畠鐨勭粍鎴愭槸鎺ュ彛瀹氫箟璇█(IDL), 璇█缁戝畾(binding:涔熻瘧涓鸿仈缂�)鍜屽厑璁稿簲鐢ㄧ▼搴忛棿浜掓搷浣滅殑鍗忚銆� 鍏剁洰鐨勪负锛氱敤涓嶅悓鐨勭▼搴忚璁¤瑷�涔﹀啓鍦ㄤ笉鍚岀殑杩涚▼涓繍琛岋紝涓轰笉鍚岀殑鎿嶄綔绯荤粺寮�鍙戙��
89銆佽璇翠綘鎵�鐔熸倝鎴栧惉璇磋繃鐨刯2ee涓殑鍑犵甯哥敤妯″紡?鍙婂璁捐妯″紡鐨勪竴浜涚湅娉�
Session Facade Pattern锛氫娇鐢⊿essionBean璁块棶EntityBean锛汳essage Facade Pattern锛氬疄鐜板紓姝ヨ皟鐢紱EJB Command Pattern锛氫娇鐢–ommand JavaBeans鍙栦唬SessionBean锛屽疄鐜拌交閲忕骇璁块棶锛汥ata Transfer Object Factory锛氶�氳繃DTO Factory绠�鍖朎ntityBean鏁版嵁鎻愪緵鐗规�э紱Generic Attribute Access锛氶�氳繃AttibuteAccess鎺ュ彛绠�鍖朎ntityBean鏁版嵁鎻愪緵鐗规�э紱Business Interface锛氶�氳繃杩滅▼锛堟湰鍦帮級鎺ュ彛鍜孊ean绫诲疄鐜扮浉鍚屾帴鍙h鑼冧笟鍔¢�昏緫涓�鑷存�э紱锛ワ吉锛㈡灦鏋勭殑璁捐濂藉潖灏嗙洿鎺ュ奖鍝嶇郴缁熺殑鎬ц兘銆佸彲鎵╁睍鎬с�佸彲缁存姢鎬с�佺粍浠跺彲閲嶇敤鎬у強寮�鍙戞晥鐜囥�傞」鐩秺澶嶆潅锛岄」鐩槦浼嶈秺搴炲ぇ鍒欒秺鑳戒綋鐜拌壇濂借璁$殑閲嶈鎬с��
90銆佽璇村湪weblogic涓紑鍙戞秷鎭疊ean鏃剁殑persistent涓巒on-persisten鐨勫樊鍒�persistent鏂瑰紡鐨凪DB鍙互淇濊瘉娑堟伅浼犻�掔殑鍙潬鎬�,涔熷氨鏄鏋淓JB瀹瑰櫒鍑虹幇闂鑰孞MS鏈嶅姟鍣ㄤ緷鐒朵細灏嗘秷鎭湪姝DB鍙敤鐨勬椂鍊欏彂閫佽繃鏉ワ紝鑰宯on锛峱ersistent鏂瑰紡鐨勬秷鎭皢琚涪寮冦��
91銆丼ervlet鎵ц鏃朵竴鑸疄鐜板摢鍑犱釜鏂规硶锛�public void init(ServletConfig config)锛沺ublic ServletConfig getServletConfig()锛沺ublic String getServletInfo()锛沺ublic void service(ServletRequest request,ServletResponse response)锛沺ublic void destroy()
92銆佸父鐢ㄧ殑璁捐妯″紡锛熻鏄庡伐鍘傛ā寮�銆侸ava涓殑23绉嶈璁℃ā寮忥細Factory锛堝伐鍘傛ā寮忥級锛孊uilder锛堝缓閫犳ā寮忥級锛� Factory Method锛堝伐鍘傛柟娉曟ā寮忥級锛孭rototype锛堝師濮嬫ā鍨嬫ā寮忥級锛孲ingleton锛堝崟渚嬫ā寮忥級锛� Facade锛堥棬闈㈡ā寮忥級锛孉dapter锛堥�傞厤鍣ㄦā寮忥級锛� Bridge锛堟ˉ姊佹ā寮忥級锛� Composite锛堝悎鎴愭ā寮忥級锛孌ecorator锛堣楗版ā寮忥級锛� Flyweight锛堜韩鍏冩ā寮忥級锛� Proxy锛堜唬鐞嗘ā寮忥級锛孋ommand锛堝懡浠ゆā寮忥級锛� Interpreter锛堣В閲婂櫒妯″紡锛夛紝 Visitor锛堣闂�呮ā寮忥級锛孖terator锛堣凯浠e瓙妯″紡锛夛紝 Mediator锛堣皟鍋滆�呮ā寮忥級锛� Memento锛堝蹇樺綍妯″紡锛夛紝Observer锛堣瀵熻�呮ā寮忥級锛孲tate锛堢姸鎬佹ā寮忥級锛孲trategy锛堢瓥鐣ユā寮忥級锛孴emplate Method锛堟ā鏉挎柟娉曟ā寮忥級锛� Chain Of Responsibleity锛堣矗浠婚摼妯″紡锛夈�傚伐鍘傛ā寮忥細宸ュ巶妯″紡鏄竴绉嶇粡甯歌浣跨敤鍒扮殑妯″紡锛屾牴鎹伐鍘傛ā寮忓疄鐜扮殑绫诲彲浠ユ牴鎹彁渚涚殑鏁版嵁鐢熸垚涓�缁勭被涓煇涓�涓被鐨勫疄渚嬶紝閫氬父杩欎竴缁勭被鏈変竴涓叕鍏辩殑鎶借薄鐖剁被骞朵笖瀹炵幇浜嗙浉鍚岀殑鏂规硶锛屼絾鏄繖浜涙柟娉曢拡瀵逛笉鍚岀殑鏁版嵁杩涜浜嗕笉鍚岀殑鎿嶄綔銆傞鍏堥渶瑕佸畾涔変竴涓熀绫伙紝璇ョ被鐨勫瓙绫婚�氳繃涓嶅悓鐨勬柟娉曞疄鐜颁簡鍩虹被涓殑鏂规硶銆傜劧鍚庨渶瑕佸畾涔変竴涓伐鍘傜被锛屽伐鍘傜被鍙互鏍规嵁鏉′欢鐢熸垚涓嶅悓鐨勫瓙绫诲疄渚嬨�傚綋寰楀埌瀛愮被鐨勫疄渚嬪悗锛屽紑鍙戜汉鍛樺彲浠ヨ皟鐢ㄥ熀绫讳腑鐨勬柟娉曡�屼笉蹇呰�冭檻鍒板簳杩斿洖鐨勬槸鍝竴涓瓙绫荤殑瀹炰緥銆�
93銆丒JB闇�鐩存帴瀹炵幇瀹冪殑涓氬姟鎺ュ彛鎴朒ome鎺ュ彛鍚楋紝璇风畝杩扮悊鐢便��杩滅▼鎺ュ彛鍜孒ome鎺ュ彛涓嶉渶瑕佺洿鎺ュ疄鐜帮紝浠栦滑鐨勫疄鐜颁唬鐮佹槸鐢辨湇鍔″櫒浜х敓鐨勶紝绋嬪簭杩愯涓搴斿疄鐜扮被浼氫綔涓哄搴旀帴鍙g被鍨嬬殑瀹炰緥琚娇鐢ㄣ��
94銆佹帓搴忛兘鏈夊摢鍑犵鏂规硶锛熻鍒椾妇銆傜敤JAVA瀹炵幇涓�涓揩閫熸帓搴忋��鎺掑簭鐨勬柟娉曟湁锛氭彃鍏ユ帓搴忥紙鐩存帴鎻掑叆鎺掑簭銆佸笇灏旀帓搴忥級锛屼氦鎹㈡帓搴忥紙鍐掓场鎺掑簭銆佸揩閫熸帓搴忥級锛岄�夋嫨鎺掑簭锛堢洿鎺ラ�夋嫨鎺掑簭銆佸爢鎺掑簭锛夛紝褰掑苟鎺掑簭锛屽垎閰嶆帓搴忥紙绠辨帓搴忋�佸熀鏁版帓搴忥級
蹇�熸帓搴忕殑浼唬鐮併��/ /浣跨敤蹇�熸帓搴忔柟娉曞a[ 0 :n- 1 ]鎺掑簭锛屼粠a[ 0 :n- 1 ]涓�夋嫨涓�涓厓绱犱綔涓簃 i d d l e锛岃鍏冪礌涓烘敮鐐癸紝
鎶婁綑涓嬬殑鍏冪礌鍒嗗壊涓轰袱娈祃eft 鍜宺 i g h t锛屼娇寰條 e f t涓殑鍏冪礌閮藉皬浜庣瓑浜庢敮鐐癸紝鑰宺ight 涓殑鍏冪礌閮藉ぇ浜庣瓑浜庢敮鐐癸紝閫掑綊鍦颁娇鐢ㄥ揩閫熸帓搴忔柟娉曞left 杩涜鎺掑簭锛岄�掑綊鍦颁娇鐢ㄥ揩閫熸帓搴忔柟娉曞right 杩涜鎺掑簭锛屾墍寰楃粨鏋滀负l e f t + m i d d l e + r i g h t銆�
95銆佽瀵逛互涓嬪湪J2EE涓父鐢ㄧ殑鍚嶈瘝杩涜瑙i噴(鎴栫畝鍗曟弿杩�)web瀹瑰櫒锛氱粰澶勪簬鍏朵腑鐨勫簲鐢ㄧ▼搴忕粍浠讹紙JSP锛孲ERVLET锛夋彁渚涗竴涓幆澧冿紝浣縅SP,SERVLET鐩存帴鏇村鍣ㄤ腑鐨勭幆澧冨彉閲忔帴鍙d氦浜掞紝涓嶅繀鍏虫敞鍏跺畠绯荤粺闂銆備富瑕佹湁WEB鏈嶅姟鍣ㄦ潵瀹炵幇銆備緥濡傦細TOMCAT,WEBLOGIC,WEBSPHERE绛夈�傝瀹瑰櫒鎻愪緵鐨勬帴鍙d弗鏍奸伒瀹圝2EE瑙勮寖涓殑WEB APPLICATION 鏍囧噯銆傛垜浠妸閬靛畧浠ヤ笂鏍囧噯鐨刉EB鏈嶅姟鍣ㄥ氨鍙仛J2EE涓殑WEB瀹瑰櫒銆侲JB瀹瑰櫒锛欵nterprise java bean 瀹瑰櫒銆傛洿鍏锋湁琛屼笟棰嗗煙鐗硅壊銆備粬鎻愪緵缁欒繍琛屽湪鍏朵腑鐨勭粍浠禘JB鍚勭绠$悊鍔熻兘銆傚彧瑕佹弧瓒矹2EE瑙勮寖鐨凟JB鏀惧叆璇ュ鍣紝椹笂灏变細琚鍣ㄨ繘琛岄珮鏁堢巼鐨勭鐞嗐�傚苟涓斿彲浠ラ�氳繃鐜版垚鐨勬帴鍙f潵鑾峰緱绯荤粺绾у埆鐨勬湇鍔°�備緥濡傞偖浠舵湇鍔°�佷簨鍔$鐞嗐�侸NDI锛氾紙Java Naming & Directory Interface锛塉AVA鍛藉悕鐩綍鏈嶅姟銆備富瑕佹彁渚涚殑鍔熻兘鏄細鎻愪緵涓�涓洰褰曠郴缁燂紝璁╁叾瀹冨悇鍦扮殑搴旂敤绋嬪簭鍦ㄥ叾涓婇潰鐣欎笅鑷繁鐨勭储寮曪紝浠庤�屾弧瓒冲揩閫熸煡鎵惧拰瀹氫綅鍒嗗竷寮忓簲鐢ㄧ▼搴忕殑鍔熻兘銆侸MS锛氾紙Java Message Service锛塉AVA娑堟伅鏈嶅姟銆備富瑕佸疄鐜板悇涓簲鐢ㄧ▼搴忎箣闂寸殑閫氳銆傚寘鎷偣瀵圭偣鍜屽箍鎾�侸TA锛氾紙Java Transaction API锛塉AVA浜嬪姟鏈嶅姟銆傛彁渚涘悇绉嶅垎甯冨紡浜嬪姟鏈嶅姟銆傚簲鐢ㄧ▼搴忓彧闇�璋冪敤鍏舵彁渚涚殑鎺ュ彛鍗冲彲銆侸AF锛氾紙Java Action FrameWork锛塉AVA瀹夊叏璁よ瘉妗嗘灦銆傛彁渚涗竴浜涘畨鍏ㄦ帶鍒舵柟闈㈢殑妗嗘灦銆傝寮�鍙戣�呴�氳繃鍚勭閮ㄧ讲鍜岃嚜瀹氫箟瀹炵幇鑷繁鐨勪釜鎬у畨鍏ㄦ帶鍒剁瓥鐣ャ�俁MI/IIOP:锛圧emote Method Invocation /internet瀵硅薄璇锋眰涓粙鍗忚锛変粬浠富瑕佺敤浜庨�氳繃杩滅▼璋冪敤鏈嶅姟銆備緥濡傦紝杩滅▼鏈変竴鍙拌绠楁満涓婅繍琛屼竴涓▼搴忥紝瀹冩彁渚涜偂绁ㄥ垎鏋愭湇鍔★紝鎴戜滑鍙互鍦ㄦ湰鍦拌绠楁満涓婂疄鐜板鍏剁洿鎺ヨ皟鐢ㄣ�傚綋鐒惰繖鏄閫氳繃涓�瀹氱殑瑙勮寖鎵嶈兘鍦ㄥ紓鏋勭殑绯荤粺涔嬮棿杩涜閫氫俊銆俁MI鏄疛AVA鐗规湁鐨勩��
96銆丣AVA璇█濡備綍杩涜寮傚父澶勭悊锛屽叧閿瓧锛歵hrows,throw,try,catch,finally鍒嗗埆浠h〃浠�涔堟剰涔夛紵鍦╰ry鍧椾腑鍙互鎶涘嚭寮傚父鍚楋紵
Java閫氳繃闈㈠悜瀵硅薄鐨勬柟娉曡繘琛屽紓甯稿鐞嗭紝鎶婂悇绉嶄笉鍚岀殑寮傚父杩涜鍒嗙被锛屽苟鎻愪緵浜嗚壇濂界殑鎺ュ彛銆傚湪Java涓紝姣忎釜寮傚父閮芥槸涓�涓璞★紝瀹冩槸Throwable绫绘垨鍏跺畠瀛愮被鐨勫疄渚嬨�傚綋涓�涓柟娉曞嚭鐜板紓甯稿悗渚挎姏鍑轰竴涓紓甯稿璞★紝璇ュ璞′腑鍖呭惈鏈夊紓甯镐俊鎭紝璋冪敤杩欎釜瀵硅薄鐨勬柟娉曞彲浠ユ崟鑾峰埌杩欎釜寮傚父骞惰繘琛屽鐞嗐�侸ava鐨勫紓甯稿鐞嗘槸閫氳繃5涓叧閿瘝鏉ュ疄鐜扮殑锛歵ry銆乧atch銆乼hrow銆乼hrows鍜宖inally銆備竴鑸儏鍐典笅鏄敤try鏉ユ墽琛屼竴娈电▼搴忥紝濡傛灉鍑虹幇寮傚父锛岀郴缁熶細鎶涘嚭锛坱hrows锛変竴涓紓甯革紝杩欐椂鍊欎綘鍙互閫氳繃瀹冪殑绫诲瀷鏉ユ崟鎹夛紙catch锛夊畠锛屾垨鏈�鍚庯紙finally锛夌敱缂虹渷澶勭悊鍣ㄦ潵澶勭悊銆傜敤try鏉ユ寚瀹氫竴鍧楅闃叉墍鏈夆�滃紓甯糕�濈殑绋嬪簭銆傜揣璺熷湪try绋嬪簭鍚庨潰锛屽簲鍖呭惈涓�涓猚atch瀛愬彞鏉ユ寚瀹氫綘鎯宠鎹曟崏鐨勨�滃紓甯糕�濈殑绫诲瀷銆倀hrow璇彞鐢ㄦ潵鏄庣‘鍦版姏鍑轰竴涓�滃紓甯糕�濄�倀hrows鐢ㄦ潵鏍囨槑涓�涓垚鍛樺嚱鏁板彲鑳芥姏鍑虹殑鍚勭鈥滃紓甯糕�濄�侳inally涓虹‘淇濅竴娈典唬鐮佷笉绠″彂鐢熶粈涔堚�滃紓甯糕�濋兘琚墽琛屼竴娈典唬鐮併�傚彲浠ュ湪涓�涓垚鍛樺嚱鏁拌皟鐢ㄧ殑澶栭潰鍐欎竴涓猼ry璇彞锛屽湪杩欎釜鎴愬憳鍑芥暟鍐呴儴鍐欏彟涓�涓猼ry璇彞淇濇姢鍏朵粬浠g爜銆傛瘡褰撻亣鍒颁竴涓猼ry璇彞锛屸�滃紓甯糕�濈殑妗嗘灦灏辨斁鍒板爢鏍堜笂闈紝鐩村埌鎵�鏈夌殑try璇彞閮藉畬鎴愩�傚鏋滀笅涓�绾х殑try璇彞娌℃湁瀵规煇绉嶁�滃紓甯糕�濊繘琛屽鐞嗭紝鍫嗘爤灏变細灞曞紑锛岀洿鍒伴亣鍒版湁澶勭悊杩欑鈥滃紓甯糕�濈殑try璇彞銆�
97銆佷竴涓��.java鈥濇簮鏂囦欢涓槸鍚﹀彲浠ュ寘鎷涓被锛堜笉鏄唴閮ㄧ被锛夛紵鏈変粈涔堥檺鍒讹紵鍙互銆傚繀椤诲彧鏈変竴涓被鍚嶄笌鏂囦欢鍚嶇浉鍚屻��
98銆丮VC鐨勫悇涓儴鍒嗛兘鏈夐偅浜涙妧鏈潵瀹炵幇?濡備綍瀹炵幇?MVC鏄疢odel锛峍iew锛岰ontroller鐨勭畝鍐欍��"Model" 浠h〃鐨勬槸搴旂敤鐨勪笟鍔¢�昏緫锛堥�氳繃JavaBean锛孍JB缁勪欢瀹炵幇锛夛紝 "View" 鏄簲鐢ㄧ殑琛ㄧず闈紙鐢盝SP椤甸潰浜х敓锛夛紝"Controller" 鏄彁渚涘簲鐢ㄧ殑澶勭悊杩囩▼鎺у埗锛堜竴鑸槸涓�涓猄ervlet锛夛紝閫氳繃杩欑璁捐妯″瀷鎶婂簲鐢ㄩ�昏緫锛屽鐞嗚繃绋嬪拰鏄剧ず閫昏緫鍒嗘垚涓嶅悓鐨勭粍浠跺疄鐜般�傝繖浜涚粍浠跺彲浠ヨ繘琛屼氦浜掑拰閲嶇敤銆�
99銆乯ava涓湁鍑犵鏂规硶鍙互瀹炵幇涓�涓嚎绋嬶紵鐢ㄤ粈涔堝叧閿瓧淇グ鍚屾鏂规硶? stop()鍜宻uspend()鏂规硶涓轰綍涓嶆帹鑽愪娇鐢紵鏈変袱绉嶅疄鐜版柟娉曪紝鍒嗗埆鏄户鎵縏hread绫讳笌瀹炵幇Runnable鎺ュ彛鐢╯ynchronized鍏抽敭瀛椾慨楗板悓姝ユ柟娉曞弽瀵逛娇鐢╯top()锛屾槸鍥犱负瀹冧笉瀹夊叏銆傚畠浼氳В闄ょ敱绾跨▼鑾峰彇鐨勬墍鏈夐攣瀹氾紝鑰屼笖濡傛灉瀵硅薄澶勪簬涓�绉嶄笉杩炶疮鐘舵�侊紝閭d箞鍏朵粬绾跨▼鑳藉湪閭g鐘舵�佷笅妫�鏌ュ拰淇敼瀹冧滑銆傜粨鏋滃緢闅炬鏌ュ嚭鐪熸鐨勯棶棰樻墍鍦ㄣ�俿uspend()鏂规硶瀹规槗鍙戠敓姝婚攣銆傝皟鐢╯uspend()鐨勬椂鍊欙紝鐩爣绾跨▼浼氬仠涓嬫潵锛屼絾鍗翠粛鐒舵寔鏈夊湪杩欎箣鍓嶈幏寰楃殑閿佸畾銆傛鏃讹紝鍏朵粬浠讳綍绾跨▼閮戒笉鑳借闂攣瀹氱殑璧勬簮锛岄櫎闈炶鈥滄寕璧封�濈殑绾跨▼鎭㈠杩愯銆傚浠讳綍绾跨▼鏉ヨ锛屽鏋滃畠浠兂鎭㈠鐩爣绾跨▼锛屽悓鏃跺張璇曞浘浣跨敤浠讳綍涓�涓攣瀹氱殑璧勬簮锛屽氨浼氶�犳垚姝婚攣銆傛墍浠ヤ笉搴旇浣跨敤suspend()锛岃�屽簲鍦ㄨ嚜宸辩殑Thread绫讳腑缃叆涓�涓爣蹇楋紝鎸囧嚭绾跨▼搴旇娲诲姩杩樻槸鎸傝捣銆傝嫢鏍囧織鎸囧嚭绾跨▼搴旇鎸傝捣锛屼究鐢╳ait()鍛藉叾杩涘叆绛夊緟鐘舵�併�傝嫢鏍囧織鎸囧嚭绾跨▼搴斿綋鎭㈠锛屽垯鐢ㄤ竴涓猲otify()閲嶆柊鍚姩绾跨▼銆�
100銆乯ava涓湁鍑犵绫诲瀷鐨勬祦锛烰DK涓烘瘡绉嶇被鍨嬬殑娴佹彁渚涗簡涓�浜涙娊璞$被浠ヤ緵缁ф壙锛岃璇村嚭浠栦滑鍒嗗埆鏄摢浜涚被锛�
瀛楄妭娴侊紝瀛楃娴併�傚瓧鑺傛祦缁ф壙浜嶪nputStream \ OutputStream锛屽瓧绗︽祦缁ф壙浜嶪nputStreamReader \ OutputStreamWriter銆傚湪java.io鍖呬腑杩樻湁璁稿鍏朵粬鐨勬祦锛屼富瑕佹槸涓轰簡鎻愰珮鎬ц兘鍜屼娇鐢ㄦ柟渚裤��
101銆乯ava涓細瀛樺湪鍐呭瓨娉勬紡鍚楋紝璇风畝鍗曟弿杩�銆備細銆傚锛歩nt i,i2;聽 return (i-i2);聽 //when i涓鸿冻澶熷ぇ鐨勬鏁�,i2涓鸿冻澶熷ぇ鐨勮礋鏁般�傜粨鏋滀細閫犳垚婧綅锛屽鑷撮敊璇��
102銆乯ava涓疄鐜板鎬佺殑鏈哄埗鏄粈涔堬紵鏂规硶鐨勯噸鍐橭verriding鍜岄噸杞絆verloading鏄疛ava澶氭�佹�х殑涓嶅悓琛ㄧ幇銆傞噸鍐橭verriding鏄埗绫讳笌瀛愮被涔嬮棿澶氭�佹�х殑涓�绉嶈〃鐜帮紝閲嶈浇Overloading鏄竴涓被涓鎬佹�х殑涓�绉嶈〃鐜般��
103銆佸瀮鍦惧洖鏀跺櫒鐨勫熀鏈師鐞嗘槸浠�涔堬紵鍨冨溇鍥炴敹鍣ㄥ彲浠ラ┈涓婂洖鏀跺唴瀛樺悧锛熸湁浠�涔堝姙娉曚富鍔ㄩ�氱煡铏氭嫙鏈鸿繘琛屽瀮鍦惧洖鏀讹紵瀵逛簬GC鏉ヨ锛屽綋绋嬪簭鍛樺垱寤哄璞℃椂锛孏C灏卞紑濮嬬洃鎺ц繖涓璞$殑鍦板潃銆佸ぇ灏忎互鍙婁娇鐢ㄦ儏鍐点�傞�氬父锛孏C閲囩敤鏈夊悜鍥剧殑鏂瑰紡璁板綍鍜岀鐞嗗爢(heap)涓殑鎵�鏈夊璞°�傞�氳繃杩欑鏂瑰紡纭畾鍝簺瀵硅薄鏄�"鍙揪鐨�"锛屽摢浜涘璞℃槸"涓嶅彲杈剧殑"銆傚綋GC纭畾涓�浜涘璞′负"涓嶅彲杈�"鏃讹紝GC灏辨湁璐d换鍥炴敹杩欎簺鍐呭瓨绌洪棿銆傚彲浠ャ�傜▼搴忓憳鍙互鎵嬪姩鎵цSystem.gc()锛岄�氱煡GC杩愯锛屼絾鏄疛ava璇█瑙勮寖骞朵笉淇濊瘉GC涓�瀹氫細鎵ц銆�
104銆侀潤鎬佸彉閲忓拰瀹炰緥鍙橀噺鐨勫尯鍒紵static i = 10; //甯搁噺锛� class A a;聽 a.i =10;//鍙彉
105銆佷粈涔堟槸java搴忓垪鍖栵紝濡備綍瀹炵幇java搴忓垪鍖栵紵
搴忓垪鍖栧氨鏄竴绉嶇敤鏉ュ鐞嗗璞℃祦鐨勬満鍒讹紝鎵�璋撳璞℃祦涔熷氨鏄皢瀵硅薄鐨勫唴瀹硅繘琛屾祦鍖栥�傚彲浠ュ娴佸寲鍚庣殑瀵硅薄杩涜璇诲啓鎿嶄綔锛屼篃鍙皢娴佸寲鍚庣殑瀵硅薄浼犺緭浜庣綉缁滀箣闂淬�傚簭鍒楀寲鏄负浜嗚В鍐冲湪瀵瑰璞℃祦杩涜璇诲啓鎿嶄綔鏃舵墍寮曞彂鐨勯棶棰樸�傚簭鍒楀寲鐨勫疄鐜帮細灏嗛渶瑕佽搴忓垪鍖栫殑绫诲疄鐜癝erializable鎺ュ彛锛岃鎺ュ彛娌℃湁闇�瑕佸疄鐜扮殑鏂规硶锛宨mplements Serializable鍙槸涓轰簡鏍囨敞璇ュ璞℃槸鍙搴忓垪鍖栫殑锛岀劧鍚庝娇鐢ㄤ竴涓緭鍑烘祦(濡傦細FileOutputStream)鏉ユ瀯閫犱竴涓狾bjectOutputStream(瀵硅薄娴�)瀵硅薄锛屾帴鐫�锛屼娇鐢∣bjectOutputStream瀵硅薄鐨剋riteObject(Object obj)鏂规硶灏卞彲浠ュ皢鍙傛暟涓簅bj鐨勫璞″啓鍑�(鍗充繚瀛樺叾鐘舵��)锛岃鎭㈠鐨勮瘽鍒欑敤杈撳叆娴併��
106銆佹槸鍚﹀彲浠ヤ粠涓�涓猻tatic鏂规硶鍐呴儴鍙戝嚭瀵归潪static鏂规硶鐨勮皟鐢紵涓嶅彲浠�,濡傛灉鍏朵腑鍖呭惈瀵硅薄鐨刴ethod()锛涗笉鑳戒繚璇佸璞″垵濮嬪寲.
107銆佸啓clone()鏂规硶鏃讹紝閫氬父閮芥湁涓�琛屼唬鐮侊紝鏄粈涔堬紵Clone 鏈夌己鐪佽涓猴紝super.clone();浠栬礋璐d骇鐢熸纭ぇ灏忕殑绌洪棿锛屽苟閫愪綅澶嶅埗銆�
108銆佸湪JAVA涓紝濡備綍璺冲嚭褰撳墠鐨勫閲嶅祵濂楀惊鐜紵鐢╞reak; return 鏂规硶銆�
109銆丩ist銆丮ap銆丼et涓変釜鎺ュ彛锛屽瓨鍙栧厓绱犳椂锛屽悇鏈変粈涔堢壒鐐癸紵List 浠ョ壒瀹氭搴忔潵鎸佹湁鍏冪礌锛屽彲鏈夐噸澶嶅厓绱犮�係et 鏃犳硶鎷ユ湁閲嶅鍏冪礌,鍐呴儴鎺掑簭銆侻ap 淇濆瓨key-value鍊硷紝value鍙鍊笺��
110銆丣2EE鏄粈涔堬紵J2EE鏄疭un鍏徃鎻愬嚭鐨勫灞�(multi-diered),鍒嗗竷寮�(distributed),鍩轰簬缁勪欢(component-base)鐨勪紒涓氱骇搴旂敤妯″瀷(enterpriese application model).鍦ㄨ繖鏍风殑涓�涓簲鐢ㄧ郴缁熶腑锛屽彲鎸夌収鍔熻兘鍒掑垎涓轰笉鍚岀殑缁勪欢锛岃繖浜涚粍浠跺張鍙湪涓嶅悓璁$畻鏈轰笂锛屽苟涓斿浜庣浉搴旂殑灞傛(tier)涓�傛墍灞炲眰娆″寘鎷鎴峰眰(clietn tier)缁勪欢,web灞傚拰缁勪欢,Business灞傚拰缁勪欢,浼佷笟淇℃伅绯荤粺(EIS)灞傘��
111銆乁ML鏂归潰鏍囧噯寤烘ā璇█UML銆傜敤渚嬪浘,闈欐�佸浘(鍖呮嫭绫诲浘銆佸璞″浘鍜屽寘鍥�),琛屼负鍥�,浜や簰鍥�(椤哄簭鍥�,鍚堜綔鍥�),瀹炵幇鍥俱��
112銆佽鍑轰竴浜涘父鐢ㄧ殑绫伙紝鍖咃紝鎺ュ彛锛岃鍚勪妇5涓�甯哥敤鐨勭被锛欱ufferedReader聽 BufferedWriter聽 FileReader聽 FileWirter聽 String聽 Integer锛涘父鐢ㄧ殑鍖咃細java.lang聽 java.awt聽 java.io聽 java.util聽 java.sql锛涘父鐢ㄧ殑鎺ュ彛锛歊emote聽 List聽 Map聽 Document聽 NodeList
113銆佸紑鍙戜腑閮界敤鍒颁簡閭d簺璁捐妯″紡?鐢ㄥ湪浠�涔堝満鍚�?姣忎釜妯″紡閮芥弿杩颁簡涓�涓湪鎴戜滑鐨勭幆澧冧腑涓嶆柇鍑虹幇鐨勯棶棰橈紝鐒跺悗鎻忚堪浜嗚闂鐨勮В鍐虫柟妗堢殑鏍稿績銆傞�氳繃杩欑鏂瑰紡锛屼綘鍙互鏃犳暟娆″湴浣跨敤閭d簺宸叉湁鐨勮В鍐虫柟妗堬紝鏃犻渶鍦ㄩ噸澶嶇浉鍚岀殑宸ヤ綔銆備富瑕佺敤鍒颁簡MVC鐨勮璁℃ā寮忋�傜敤鏉ュ紑鍙慗SP/Servlet鎴栬�匤2EE鐨勭浉鍏冲簲鐢ㄣ�傜畝鍗曞伐鍘傛ā寮忕瓑銆�
114銆乯sp鏈夊摢浜涘姩浣�?浣滅敤鍒嗗埆鏄粈涔�?JSP鍏辨湁浠ヤ笅6绉嶅熀鏈姩浣� jsp:include锛氬湪椤甸潰琚姹傜殑鏃跺�欏紩鍏ヤ竴涓枃浠躲�� jsp:useBean锛氬鎵炬垨鑰呭疄渚嬪寲涓�涓狫avaBean銆� jsp:setProperty锛氳缃甁avaBean鐨勫睘鎬с�� jsp:getProperty锛氳緭鍑烘煇涓狫avaBean鐨勫睘鎬с�� jsp:forward锛氭妸璇锋眰杞埌涓�涓柊鐨勯〉闈€�� jsp:plugin锛氭牴鎹祻瑙堝櫒绫诲瀷涓篔ava鎻掍欢鐢熸垚OBJECT鎴朎MBED鏍囪銆�
115銆丄nonymous Inner Class (鍖垮悕鍐呴儴绫�) 鏄惁鍙互extends(缁ф壙)鍏跺畠绫伙紝鏄惁鍙互implements(瀹炵幇)interface(鎺ュ彛)?鍙互缁ф壙鍏朵粬绫绘垨瀹屾垚鍏朵粬鎺ュ彛锛屽湪swing缂栫▼涓父鐢ㄦ鏂瑰紡銆�
116銆佸簲鐢ㄦ湇鍔″櫒涓嶹EB SERVER鐨勫尯鍒紵搴旂敤鏈嶅姟鍣細Weblogic銆乀omcat銆丣boss锛� WEB SERVER锛欼IS銆� Apache
117銆丅S涓嶤S鐨勮仈绯讳笌鍖哄埆銆�C/S鏄疌lient/Server鐨勭缉鍐欍�傛湇鍔″櫒閫氬父閲囩敤楂樻�ц兘鐨凱C銆佸伐浣滅珯鎴栧皬鍨嬫満锛屽苟閲囩敤澶у瀷鏁版嵁搴撶郴缁燂紝濡侽racle銆丼ybase銆両nformix鎴� SQL Server銆傚鎴风闇�瑕佸畨瑁呬笓鐢ㄧ殑瀹㈡埛绔蒋浠躲�侭/锛虫槸Brower/Server鐨勭缉鍐欙紝瀹㈡埛鏈轰笂鍙瀹夎涓�涓祻瑙堝櫒锛圔rowser锛夛紝濡侼etscape Navigator鎴朓nternet Explorer锛屾湇鍔″櫒瀹夎Oracle銆丼ybase銆両nformix鎴� SQL Server绛夋暟鎹簱銆傚湪杩欑缁撴瀯涓嬶紝鐢ㄦ埛鐣岄潰瀹屽叏閫氳繃WWW娴忚鍣ㄥ疄鐜帮紝涓�閮ㄥ垎浜嬪姟閫昏緫鍦ㄥ墠绔疄鐜帮紝浣嗘槸涓昏浜嬪姟閫昏緫鍦ㄦ湇鍔″櫒绔疄鐜般�傛祻瑙堝櫒閫氳繃锛積b Server 鍚屾暟鎹簱杩涜鏁版嵁浜や簰銆侰/S 涓� B/S 鍖哄埆锛� 锛戯紟纭欢鐜涓嶅悓: C/S 涓�鑸缓绔嬪湪涓撶敤鐨勭綉缁滀笂, 灏忚寖鍥撮噷鐨勭綉缁滅幆澧�, 灞�鍩熺綉涔嬮棿鍐嶉�氳繃涓撻棬鏈嶅姟鍣ㄦ彁渚涜繛鎺ュ拰鏁版嵁浜ゆ崲鏈嶅姟锛涖��B/S 寤虹珛鍦ㄥ箍鍩熺綉涔嬩笂鐨�, 涓嶅繀鏄笓闂ㄧ殑缃戠粶纭欢鐜,渚嬩笌鐢佃瘽涓婄綉, 绉熺敤璁惧. 淇℃伅鑷繁绠$悊. 鏈夋瘮C/S鏇村己鐨勯�傚簲鑼冨洿, 涓�鑸彧瑕佹湁鎿嶄綔绯荤粺鍜屾祻瑙堝櫒灏辫 锛掞紟瀵瑰畨鍏ㄨ姹備笉鍚� 锛欳/S 涓�鑸潰鍚戠浉瀵瑰浐瀹氱殑鐢ㄦ埛缇�, 瀵逛俊鎭畨鍏ㄧ殑鎺у埗鑳藉姏寰堝己. 涓�鑸珮搴︽満瀵嗙殑淇℃伅绯荤粺閲囩敤C/S 缁撴瀯閫傚疁. 鍙互閫氳繃B/S鍙戝竷閮ㄥ垎鍙叕寮�淇℃伅.B/S 寤虹珛鍦ㄥ箍鍩熺綉涔嬩笂, 瀵瑰畨鍏ㄧ殑鎺у埗鑳藉姏鐩稿寮�, 鍙兘闈㈠悜涓嶅彲鐭ョ殑鐢ㄦ埛銆傦紦锛庡绋嬪簭鏋舵瀯涓嶅悓 锛氥��C/S 绋嬪簭鍙互鏇村姞娉ㄩ噸娴佺▼, 鍙互瀵规潈闄愬灞傛鏍¢獙, 瀵圭郴缁熻繍琛岄�熷害鍙互杈冨皯鑰冭檻.銆�B/S 瀵瑰畨鍏ㄤ互鍙婅闂�熷害鐨勫閲嶇殑鑰冭檻, 寤虹珛鍦ㄩ渶瑕佹洿鍔犱紭鍖栫殑鍩虹涔嬩笂. 姣擟/S鏈夋洿楂樼殑瑕佹眰 B/S缁撴瀯鐨勭▼搴忔灦鏋勬槸鍙戝睍鐨勮秼鍔�, 浠嶮S鐨�.Net绯诲垪鐨凚izTalk 2000 Exchange 2000绛�, 鍏ㄩ潰鏀寔缃戠粶鐨勬瀯浠舵惌寤虹殑绯荤粺. SUN 鍜孖BM鎺ㄧ殑JavaBean 鏋勪欢鎶�鏈瓑,浣� B/S鏇村姞鎴愮啛. 锛旓紟杞欢閲嶇敤涓嶅悓锛� C/S 绋嬪簭鍙互涓嶅彲閬垮厤鐨勬暣浣撴�ц�冭檻, 鏋勪欢鐨勯噸鐢ㄦ�т笉濡傚湪B/S瑕佹眰涓嬬殑鏋勪欢鐨勯噸鐢ㄦ�уソ.銆�B/S 瀵圭殑澶氶噸缁撴瀯,瑕佹眰鏋勪欢鐩稿鐙珛鐨勫姛鑳�. 鑳藉鐩稿杈冨ソ鐨勯噸鐢�.灏卞叆涔版潵鐨勯妗屽彲浠ュ啀鍒╃敤,鑰屼笉鏄仛鍦ㄥ涓婄殑鐭冲ご妗屽瓙 銆傦紩锛庣郴缁熺淮鎶や笉鍚屄� 锛欳/S 绋嬪簭鐢变簬鏁翠綋鎬�, 蹇呴』鏁翠綋鑰冨療, 澶勭悊鍑虹幇鐨勯棶棰樹互鍙婄郴缁熷崌绾�. 鍗囩骇闅�. 鍙兘鏄啀鍋氫竴涓叏鏂扮殑绯荤粺锛屻��B/S 鏋勪欢缁勬垚,鏂归潰鏋勪欢涓埆鐨勬洿鎹�,瀹炵幇绯荤粺鐨勬棤缂濆崌绾�. 绯荤粺缁存姢寮�閿�鍑忓埌鏈�灏�.鐢ㄦ埛浠庣綉涓婅嚜宸变笅杞藉畨瑁呭氨鍙互瀹炵幇鍗囩骇. 锛栵紟澶勭悊闂涓嶅悓 锛欳/S 绋嬪簭鍙互澶勭悊鐢ㄦ埛闈㈠浐瀹�, 骞朵笖鍦ㄧ浉鍚屽尯鍩�, 瀹夊叏瑕佹眰楂橀渶姹�, 涓庢搷浣滅郴缁熺浉鍏�. 搴旇閮芥槸鐩稿悓鐨勭郴缁燂紝B/S 寤虹珛鍦ㄥ箍鍩熺綉涓�, 闈㈠悜涓嶅悓鐨勭敤鎴风兢, 鍒嗘暎鍦板煙, 杩欐槸C/S鏃犳硶浣滃埌鐨�. 涓庢搷浣滅郴缁熷钩鍙板叧绯绘渶灏�. 锛楋紟鐢ㄦ埛鎺ュ彛涓嶅悓锛� C/S 澶氭槸寤虹珛鐨刉indow骞冲彴涓�,琛ㄧ幇鏂规硶鏈夐檺,瀵圭▼搴忓憳鏅亶瑕佹眰杈冮珮锛孊/S 寤虹珛鍦ㄦ祻瑙堝櫒涓�, 鏈夋洿鍔犱赴瀵屽拰鐢熷姩鐨勮〃鐜版柟寮忎笌鐢ㄦ埛浜ゆ祦. 骞朵笖澶ч儴鍒嗛毦搴﹀噺浣�,鍑忎綆寮�鍙戞垚鏈�.
锛橈紟淇℃伅娴佷笉鍚岋細C/S 绋嬪簭涓�鑸槸鍏稿瀷鐨勪腑澶泦鏉冪殑鏈烘寮忓鐞�, 浜や簰鎬х浉瀵逛綆锛孊/S 淇℃伅娴佸悜鍙彉鍖�, B-B B-C B-G绛変俊鎭�佹祦鍚戠殑鍙樺寲, 鏇村儚浜ゆ槗涓績銆�
118銆丩INUX涓嬬嚎绋嬶紝GDI绫荤殑瑙i噴銆�LINUX瀹炵幇鐨勫氨鏄熀浜庢牳蹇冭交閲忕骇杩涚▼鐨�"涓�瀵逛竴"绾跨▼妯″瀷锛屼竴涓嚎绋嬪疄浣撳搴斾竴涓牳蹇冭交閲忕骇杩涚▼锛岃�岀嚎绋嬩箣闂寸殑绠$悊鍦ㄦ牳澶栧嚱鏁板簱涓疄鐜般�� GDI绫讳负鍥惧儚璁惧缂栫▼鎺ュ彛绫诲簱銆�
119銆丼TRUTS鐨勫簲鐢�(濡係TRUTS鏋舵瀯)Struts鏄噰鐢↗ava Servlet/JavaServer Pages鎶�鏈紝寮�鍙慦eb搴旂敤绋嬪簭鐨勫紑鏀炬簮鐮佺殑framework銆� 閲囩敤Struts鑳藉紑鍙戝嚭鍩轰簬MVC(Model-View-Controller)璁捐妯″紡鐨勫簲鐢ㄦ瀯鏋躲�� Struts鏈夊涓嬬殑涓昏鍔熻兘锛� 涓�.鍖呭惈涓�涓猚ontroller servlet锛岃兘灏嗙敤鎴风殑璇锋眰鍙戦�佸埌鐩稿簲鐨凙ction瀵硅薄銆� 浜�.JSP鑷敱tag搴擄紝骞朵笖鍦╟ontroller servlet涓彁渚涘叧鑱旀敮鎸侊紝甯姪寮�鍙戝憳鍒涘缓浜や簰寮忚〃鍗曞簲鐢ㄣ�� 涓�.鎻愪緵浜嗕竴绯诲垪瀹炵敤瀵硅薄锛歑ML澶勭悊銆侀�氳繃Java reflection APIs鑷姩澶勭悊JavaBeans灞炴�с�佸浗闄呭寲鐨勬彁绀哄拰娑堟伅銆�
120銆丣do鏄粈涔�?JDO鏄疛ava瀵硅薄鎸佷箙鍖栫殑鏂扮殑瑙勮寖锛屼负java data object鐨勭畝绉�,涔熸槸涓�涓敤浜庡瓨鍙栨煇绉嶆暟鎹粨搴撲腑鐨勫璞$殑鏍囧噯鍖朅PI銆侸DO鎻愪緵浜嗛�忔槑鐨勫璞″瓨鍌紝鍥犳瀵瑰紑鍙戜汉鍛樻潵璇达紝瀛樺偍鏁版嵁瀵硅薄瀹屽叏涓嶉渶瑕侀澶栫殑浠g爜锛堝JDBC API鐨勪娇鐢級銆傝繖浜涚箒鐞愮殑渚嬭宸ヤ綔宸茬粡杞Щ鍒癑DO浜у搧鎻愪緵鍟嗚韩涓婏紝浣垮紑鍙戜汉鍛樿В鑴卞嚭鏉ワ紝浠庤�岄泦涓椂闂村拰绮惧姏鍦ㄤ笟鍔¢�昏緫涓娿�傚彟澶栵紝JDO寰堢伒娲伙紝鍥犱负瀹冨彲浠ュ湪浠讳綍鏁版嵁搴曞眰涓婅繍琛屻�侸DBC鍙槸闈㈠悜鍏崇郴鏁版嵁搴擄紙RDBMS锛塉DO鏇撮�氱敤锛屾彁渚涘埌浠讳綍鏁版嵁搴曞眰鐨勫瓨鍌ㄥ姛鑳斤紝姣斿鍏崇郴鏁版嵁搴撱�佹枃浠躲�乆ML浠ュ強瀵硅薄鏁版嵁搴擄紙ODBMS锛夌瓑绛夛紝浣垮緱搴旂敤鍙Щ妞嶆�ф洿寮恒��
121銆佸唴閮ㄧ被鍙互寮曠敤浠栧寘鍚被鐨勬垚鍛樺悧锛熸湁娌℃湁浠�涔堥檺鍒讹紵涓�涓唴閮ㄧ被瀵硅薄鍙互璁块棶鍒涘缓瀹冪殑澶栭儴绫诲璞$殑鍐呭
122銆乄EB SERVICE鍚嶈瘝瑙i噴銆侸SWDL寮�鍙戝寘鐨勪粙缁嶃�侸AXP銆丣AXM鐨勮В閲娿�係OAP銆乁DDI,WSDL瑙i噴銆�Web ServiceWeb Service鏄熀浜庣綉缁滅殑銆佸垎甯冨紡鐨勬ā鍧楀寲缁勪欢锛屽畠鎵ц鐗瑰畾鐨勪换鍔★紝閬靛畧鍏蜂綋鐨勬妧鏈鑼冿紝杩欎簺瑙勮寖浣垮緱Web Service鑳戒笌鍏朵粬鍏煎鐨勭粍浠惰繘琛屼簰鎿嶄綔銆侸AXP(Java API for XML Parsing) 瀹氫箟浜嗗湪Java涓娇鐢―OM, SAX, XSLT鐨勯�氱敤鐨勬帴鍙c�傝繖鏍峰湪浣犵殑绋嬪簭涓綘鍙浣跨敤杩欎簺閫氱敤鐨勬帴鍙o紝褰撲綘闇�瑕佹敼鍙樺叿浣撶殑瀹炵幇鏃跺�欎篃涓嶉渶瑕佷慨鏀逛唬鐮併�侸AXM(Java API for XML Messaging) 鏄负SOAP閫氫俊鎻愪緵璁块棶鏂规硶鍜屼紶杈撴満鍒剁殑API銆俉SDL鏄竴绉� XML 鏍煎紡锛岀敤浜庡皢缃戠粶鏈嶅姟鎻忚堪涓轰竴缁勭鐐癸紝杩欎簺绔偣瀵瑰寘鍚潰鍚戞枃妗d俊鎭垨闈㈠悜杩囩▼淇℃伅鐨勬秷鎭繘琛屾搷浣溿�傝繖绉嶆牸寮忛鍏堝鎿嶄綔鍜屾秷鎭繘琛屾娊璞℃弿杩帮紝鐒跺悗灏嗗叾缁戝畾鍒板叿浣撶殑缃戠粶鍗忚鍜屾秷鎭牸寮忎笂浠ュ畾涔夌鐐广�傜浉鍏崇殑鍏蜂綋绔偣鍗崇粍鍚堟垚涓烘娊璞$鐐癸紙鏈嶅姟锛夈�係OAP鍗崇畝鍗曞璞¤闂崗璁�(Simple Object Access Protocol)锛屽畠鏄敤浜庝氦鎹ML缂栫爜淇℃伅鐨勮交閲忕骇鍗忚銆� UDDI 鐨勭洰鐨勬槸涓虹數瀛愬晢鍔″缓绔嬫爣鍑嗭紱UDDI鏄竴濂楀熀浜嶹eb鐨勩�佸垎甯冨紡鐨勩�佷负Web Service鎻愪緵鐨勩�佷俊鎭敞鍐屼腑蹇冪殑瀹炵幇鏍囧噯瑙勮寖锛屽悓鏃朵篃鍖呭惈涓�缁勪娇浼佷笟鑳藉皢鑷韩鎻愪緵鐨刉eb Service娉ㄥ唽锛屼互浣垮埆鐨勪紒涓氳兘澶熷彂鐜扮殑璁块棶鍗忚鐨勫疄鐜版爣鍑嗐��