锘??xml version="1.0" encoding="utf-8" standalone="yes"?> 綰у埆: 楂樼駭 Ruby on Rails 鏄竴涓?Web 搴旂敤紼嬪簭妗嗘灦錛屽畠鐨勭洰鏍囨槸涓哄簲鐢ㄧ▼搴忓紑鍙戞彁渚涗竴鏉℃槗琛岄亾銆傚疄闄呬笂錛屾鏋剁殑鏀寔鑰呬滑澹扮О Ruby on Rails 寮鍙戜漢鍛樼殑鐢熶駭鐜囨渶澶氭槸浣跨敤浼犵粺 J2EE 妗嗘灦鐨?10 鍊嶃傦紙璇烽槄璇燴淩olling with Ruby on Rails鈥濅竴鏂囷紝浠ヨ幏寰楀叧浜庤繖涓澹版槑鐨勬洿澶氬唴瀹癸紱璇峰弬闃?鍙傝冭祫鏂?/A>錛夈傝櫧鐒惰繖鍙ヨ瘽閫犳垚浜?Rails 鍜?J2EE 紺懼尯鐩稿綋澶х殑浜夎錛屼絾浜夎涓嵈寰堝皯璋堝強濡備綍姣旇緝 Rails 鍜?J2EE 鏋舵瀯銆傛湰鏂囧皢浣跨敤浼佷笟搴旂敤紼嬪簭涓父瑙佺殑寮婧愬伐鍏鳳紝瀵?Rails 妗嗘灦鍜屽吀鍨嬬殑 J2EE 瀹炵幇榪涜姣旇緝銆?/P>
浠涔堟槸 Ruby on Rails錛?/SPAN> 铏界劧鎴戜笉鑳戒繚璇佹鏋剁‘瀹炰細鎻愪緵瀹冩墍鎵胯鐨勮交鏉懼揩涔愶紝浣嗘槸涓婇潰榪欏彞璇濈‘瀹炲緢濂藉湴鎬葷粨浜?Rails 鐨勫搧璐ㄣ傚叏鏍堝寘鎷細Web 鏈嶅姟鍣ㄣ佸鐞?HTTP 璇鋒眰鍜屽搷搴旂殑妗嗘灦錛屼互鍙婃柟渚垮湴鎶婃暟鎹寔涔呭瓨鍌ㄥ埌鍏崇郴鏁版嵁搴撶殑妗嗘灦銆俁ails 閫氳繃娑堥櫎澶嶆潅鐨?XML 閰嶇疆鏂囦歡錛屼嬌鐢?Ruby 璇█鐨勫姩鎬佹ц川錛屽府鍔╂妸闈欐佺被鍨嬭璦涓父瑙佺殑璁稿閲嶅浠g爜鍑忓皯鍒版渶灝戯紝鍔姏浣垮紑鍙戝伐浣滃彉寰楁洿瀹規槗銆?/P>
Rails 鍜屽吀鍨嬬殑 J2EE Web 鍫嗘爤 鍙互鐪嬪埌錛孯ails 鍫嗘爤鍜屾瀯鎴愭櫘閫氱殑鍩轟簬 J2EE 鐨?Web 搴旂敤紼嬪簭鐨勭粍浠朵箣闂寸殑鍩烘湰鍖哄埆寰堝皬銆備袱鑰呴兘鏈夌敤鏉ユ墽琛屽簲鐢ㄧ▼搴忎唬鐮佺殑瀹瑰櫒錛涢兘鏈夊府鍔╁垎紱誨簲鐢ㄧ▼搴忕殑妯″瀷銆佽鍥懼拰鎺т歡鐨?MVC 妗嗘灦錛涗互鍙婃寔涔呭瓨鍌ㄦ暟鎹殑鏈哄埗銆?/P>
MVC 妗嗘灦
鎶鏈灦鏋勫笀, Anassina, Inc.
2005 騫?8 鏈?11 鏃?/P>
Ruby on Rails 鏄竴涓浉瀵硅緝鏂扮殑 Web 搴旂敤紼嬪簭妗嗘灦錛屾瀯寤哄湪 Ruby 璇█涔嬩笂銆傚畠琚浼犱負鐜版湁浼佷笟妗嗘灦鐨勪竴涓浛浠o紝鑰屽畠鐨勭洰鏍囷紝綆鑰岃█涔嬶紝灝辨槸璁╃敓媧伙紝鑷沖皯鏄?Web 寮鍙戞柟闈㈢殑鐢熸椿錛屽彉寰楁洿杞繪澗銆傚湪鏈枃涓紝Aaron Rustad 灝嗗 Rails 鍜屼紶緇熺殑 J2EE 妗嗘灦鍦ㄦ灦鏋勪笂鐨勪竴浜涘叧閿壒鎬ц繘琛屾瘮杈冦?/BLOCKQUOTE>
瑕佹兂鎵懼埌鐢ㄤ竴鍙ヨ瘽鎻忚堪 Rails 鐨勭畝鍗曡鏄庯紝鍙渶鏌ョ湅欏圭洰鐨?涓婚〉 鍗沖彲錛?/P>
Rails 鏄竴涓敤 Ruby 緙栧啓鐨勫叏鏍堢殑錛坒ull-stack錛夈佸紑婧愮殑 Web 妗嗘灦錛屽彲浠ヤ嬌鐢ㄥ畠鏉ヨ交鏉劇紪鍐欏疄闄呯殑搴旂敤紼嬪簭錛屾墍闇鐨勪唬鐮佷篃瑕佹瘮澶у鏁版鏋惰姳鍦ㄥ鐞?XML 涓婄殑浠g爜灝戙?
鍥?1 姣旇緝浜?Rails 鍫嗘爤鍜屽吀鍨嬬殑 J2EE Web 鍫嗘爤錛堝寘鎷?Tomcat servlet 瀹瑰櫒銆丼truts Web 搴旂敤紼嬪簭妗嗘灦鍜?Hibernate 鎸佷箙鎬ф鏋訛級銆?/P>
妯″瀷-瑙嗗浘-鎺у埗鍣紙MVC錛夋槸搴旂敤鏃墮棿鐩稿綋闀褲佸簲鐢ㄩ潰鐩稿綋騫跨殑涓涓璁℃ā寮忋傚畠婧愯嚜 Smalltalk錛涘浠婏紝鍑犱箮鎵鏈夌殑 GUI 妗嗘灦錛屽寘鎷?Web 鍜岃儢瀹㈡埛绔紝閮戒互璇ユ鏋朵負鍩虹銆侻VC 鏈変笁涓儴鍒嗭細妯″瀷錛岃礋璐d笟鍔¢昏緫錛屽寘鎷簲鐢ㄧ▼搴忕姸鎬佸拰灝嗗湪榪欎釜鐘舵佷笂鎵ц鐨勫姩浣滐紱瑙嗗浘錛岀敤鏉ユ覆鏌撳拰鍚戠敤鎴峰憟鐜版ā鍨嬶紙鍦?Web 搴旂敤紼嬪簭涓紝瑙嗗浘涓鑸覆鏌撲負 HTML錛夛紱鎺у埗鍣?/I>錛屽畾涔夊簲鐢ㄧ▼搴忕殑琛屼負銆傛湁鍏?MVC 妯″紡鐨勮緇嗚В閲婏紝璇峰弬闃?鍙傝冭祫鏂?/A>銆?/P>
鍓嶇鎺у埗鍣?/SPAN>
Struts 鐨?ActionServlet
鍜?Rails 鐨?DispatchServlet
閮芥槸鍓嶇鎺у埗鍣ㄦā寮忕殑渚嬪瓙錛涙墍浠ワ紝瀹冧滑鎻愪緵浜嗙浉鍚岀殑鍔熻兘銆傚畠浠帴鍙?HTTP 璇鋒眰錛岃В鏋?URL錛屾妸璇鋒眰鐨勫鐞嗚漿鍙戠粰閫傚綋鐨勫姩浣溿傚湪 Struts 涓紝鍔ㄤ綔鏄墿灞曡嚜 Action
鐨勭被錛涘浜?Rails錛屽姩浣滄槸鎵╁睍鑷?ActionController
鐨勭被銆備袱涓墠绔帶鍒跺櫒涔嬮棿鐨勪富瑕佸尯鍒槸瀹冧滑濡備綍鍐沖畾澶勭悊鍏蜂綋璇鋒眰鐨勫姩浣溿?/P>
浣跨敤 Struts錛屽紑鍙戜漢鍛橀渶瑕佹妸鐗瑰畾璇鋒眰鐨勬槧灝勫閮ㄥ寲鍒?XML 閰嶇疆鏂囦歡涓殑 Action
綾匯傚綋棣栨瑁呭叆 ActionServlet
鏃訛紝瀹冨皢瑙f瀽榪欎釜鏂囦歡錛屽茍鍑嗗鎺ュ彈璇鋒眰銆傛牴鎹害瀹氾紝浠?.do
緇撴潫鐨勮姹傝閲嶅畾鍚戝埌 ActionServlet
錛岀敱 ActionServlet 鍒嗘淳鍒伴傚綋鐨?Action
銆?A xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">鍥?2 鐨?XML 鏄竴涓吀鍨嬬殑鏄犲皠銆傚畠鍛婅瘔 ActionServlet
鎶婂彨浣?deleteOrder.do
鐨勮姹傝漿鍙戝埌 controllers.order.DeleteOrderAction
浣滆繘涓姝ュ鐞嗐?/P>
Rails 閲囩敤浜嗕笉鍚岀殑鏂瑰紡銆傚畠娌℃湁渚濊禆閰嶇疆鏂囦歡鎶婅姹傛槧灝勫埌鏌愪竴涓姩浣滐紝鑰屾槸鏍規嵁璇鋒眰鐨?URL 鍙戠幇閫傚綋鐨勫姩浣溿備粠鍥?2 鍙互鐪嬪埌錛孶RL http://localhost/order/delete/4
鍛婅瘔 Rails 璋冪敤 OrderController
瀹炰緥涓婄殑 delete
鏂規硶錛屽茍灝?4
浣滀負鍙敤鐨勫疄渚嬪彉閲忋俁ails 瓚沖鑱槑錛岀煡閬?/order
灝嗘槧灝勫埌鏂囦歡 order_controller.rb 涓畾涔夌殑涓涓帶鍒跺櫒綾匯傚鏋滃湪鎺у埗鍣ㄤ腑瀹氫箟浜?find
鏂規硶錛岄偅涔堝彧瑕佺敤 find
鏇夸唬 URL 涓殑 delete
錛屽氨鍙互璋冪敤榪欎釜鏂規硶銆?/P>
鍥?2. Rails 鍜?Struts 涓殑 URL 鏄犲皠
鍔ㄤ綔鍜屾ā鍨?/SPAN>
鍦?Rails 鍜?Struts 涓紝鍔ㄤ綔鐢ㄦ潵鍏呭綋鍓嶇鎺у埗鍣ㄥ拰妯″瀷涔嬮棿鐨勬ˉ姊併傚紑鍙戜漢鍛樻彁渚涘姩浣滅殑鐜板疄錛屼粠鑰屾彁渚涚壒瀹氫簬搴旂敤紼嬪簭鐨勮姹傚鐞嗐傚墠绔帶鍒跺櫒璐熻矗鎺ュ彈璇鋒眰錛屽茍鎶婅姹備紶閫掑埌鐗瑰畾鍔ㄤ綔銆傚浘 3 婕旂ず浜?Rails 鍜?Struts 鍩烘湰鐨勫姩浣滃眰嬈$粨鏋勩?/P>
鍥?3. Rails 鍜?Struts 鐨勫姩浣滃眰嬈$粨鏋?/B>
鍔ㄤ綔鏄ā鍨嬭繕鏄帶鍒跺櫒錛?/B> |
Struts 瑕佹眰寮鍙戜漢鍛樻墿灞?Action
騫惰鐩?execute()
錛屼互澶勭悊璇鋒眰銆傞氬父錛屾瘡涓?Action
綾婚兘鎻愪緵浜嗛潪甯稿叿浣撶殑宸ヤ綔鍗曞厓銆?A xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">鍥?3 婕旂ず浜嗕笁涓壒瀹氬姩浣滐細SaveOrderAction
銆?CODE>DeleteOrderAction 鍜?ListOrdersAction
銆傚墠绔帶鍒跺櫒灝嗚皟鐢?execute()
鏂規硶錛屼紶閫掔粰瀹冭澶氭湁鐢ㄧ殑瀵硅薄錛屽叾涓寘鎷?HTTP 璇鋒眰鍜屽搷搴斿璞°?CODE>ActionForm 鏄竴涓被錛屽畠鍙互鏂逛究鍦板悜瑙嗗浘鏉ュ洖浼犺緭騫墮獙璇佷笌琛ㄥ崟鏈夊叧鐨勮緭鍏ワ紝ActionMapping
鍖呭惈鏄犲皠鐨勯厤緗俊鎭紝灝卞儚 鍥?2 鐨?XML 鎵鎻忚堪鐨勯偅鏍楓?/P>
execute()
鏂規硶榪斿洖 ActionForward
瀵硅薄錛孲truts 鐢ㄨ繖涓璞℃潵紜畾瀵硅姹傜戶緇繘琛屽鐞嗙殑緇勪歡銆備竴鑸潵璇達紝榪欎釜緇勪歡鏄竴涓?JSP 欏甸潰錛屼絾鏄?ActionForward
涔熻兘鎸囧悜鍏朵粬鍔ㄤ綔銆傚紑鍙戜漢鍛樺繀欏繪竻妤氾紝Struts 鍒涘緩鐨勬槸 Action
鐨勫崟涓瀹炰緥錛屽茍鍏佽澶氫釜綰跨▼璋冪敤瀹冪殑 execute()
銆傝繖浣胯姹傚鐞嗗彉寰楁洿蹇紝鍥犱負妗嗘灦澶勭悊姣忎釜璇鋒眰鏃朵笉鐢ㄩ綣佸湴鍒涘緩鏂扮殑 Action
瀹炰緥銆備絾鏄洜涓哄彲浠ュ湪澶氫釜綰跨▼涔嬮棿鍏變韓鍗曚竴瀵硅薄錛屾墍浠ュ繀欏婚伒瀹堥傚綋鐨勭嚎紼嬫敞鎰忎簨欏癸紝鍥犱負鍏朵粬綰跨▼鍙兘浼氱牬鍧忓湪榪欎釜鍔ㄤ綔涓繚鎸佺姸鎬佺殑瀹炰緥鍙橀噺銆?/P>
鍦?Rails 涓紝蹇呴』鎵╁睍 ActionController::Base
錛岃妯″瀷鍙備笌鍒拌姹傚鐞嗕腑銆俁ails 娌℃湁灝?ActionController
鐨勫疄渚嬫睜鍖栵紱鐩稿弽錛屽畠涓烘瘡涓姹傚垱寤烘柊鐨勫疄渚嬨傝櫧鐒惰繖瀵規ц兘鍙兘鏈夎礋闈㈠獎鍝嶏紝浣嗘槸瀹冨彲浠ヨ寮鍙戝彉寰楁洿瀹規槗銆傚紑鍙戜漢鍛樹笉闇瑕佸叧娉?Struts 涓瓨鍦ㄧ殑綰跨▼闂錛屽洜姝わ紝浼氳瘽銆佽姹傘佹爣棰樺拰鍙傛暟閮藉彲浠ヤ綔涓?ActionController
鐨勫疄渚嬫垚鍛樻潵榪涜璁塊棶銆?CODE>ActionController 榪樻槸涓涓皢鐗瑰畾鍩熼昏緫鐨勬墍鏈夊鐞嗙粍鍚堝湪涓璧風殑鍚堢悊鍦烘墍銆係truts 鐨?Action
綾繪槸緇嗙矑搴︾殑錛屽畠鎻愪緵浜嗛潪甯稿叿浣撶殑宸ヤ綔鍗曞厓錛岃?Rails ActionController
鍒欐槸綺楃矑搴︾殑錛屽畠灝嗗叿浣撶殑宸ヤ綔鍗曞厓妯℃嫙涓轟竴浜涙柟娉曘?/P>
娓呭崟 1 鍜?娓呭崟 2 鍒嗗埆婕旂ず浜嗗吀鍨嬬殑 Struts 鍔ㄤ綔鍜屽吀鍨嬬殑 Rails 鍔ㄤ綔
琛?1 鎻愪緵浜嗗涓ょ鏂規硶鐨勯昏緫嫻佺▼鐨勬瘮杈冿紝騫舵紨紺轟簡娓呭崟 1 鍜屾竻鍗?2 鐨勭壒瀹氳涓彂鐢熺殑浜嬫儏銆傜爺絀?DeleteOrderAction
鐨?execute()
鏂規硶鍜?OrderController
鐨?delete
鏂規硶錛屽彲浠ョ湅鍑哄畠浠熀鏈笂鏄浉鍚岀殑銆?/P>琛?1. execute() 鍜?delete 鏂規硶姣旇緝
姝ラ | Struts | Rails |
妗嗘灦璋冪敤鍔ㄤ綔 | 琛?03錛?/B> execute() |
琛?07錛?/B> delete |
浠庤姹備腑媯绱㈠埌鐨?ID | 琛?06-07錛?/B>浠庤姹傚璞′腑鍙栧嚭 | 琛?08錛?/B>浠庢墍鏈夊弬鏁扮殑瀹炰緥鍝堝笇涓彇鍑?/TD> |
浠庢暟鎹簱鍒犻櫎璁㈠崟璁板綍 | 琛?09銆?4-24錛?/B>璋冪敤 delete() 鏂規硶錛岀敤 Hibernate 鍒犻櫎璁板綍 |
琛?09錛?/B>鐢?ActiveRecord 鍒犻櫎璁板綍 |
閲嶅畾鍚戝埌鍒楀嚭鍓╀綑璁㈠崟 | 琛?11錛?/B>鐢?ActionMapping 瀵硅薄鏌ユ壘灝嗚杞彂澶勭悊鐨勪笅涓涓粍浠躲?A xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">鍥?2 涓殑 XML 鏄犲皠鏄劇ず錛?CODE>success 灝嗘槧灝勫埌 /listOrders 錛岃繖鏄彟涓涓?Action 錛岃礋璐f煡鎵懼墿浣欒鍗曪紝騫朵互 JSP 鐨勫艦寮忓憟鐜板畠浠?/TD>
| 琛?10錛?/B>鐢ㄥ皢璋冪敤鐨勪笅涓鍔ㄤ綔鐨勫搱甯屾潵璋冪敤 redirect_to 鏂規硶錛涘湪榪欑鎯呭喌涓嬶紝瀹冨彧鏄皟鐢ㄥ悓涓鎺у埗鍣ㄧ殑 list 鏂規硶 |
鎸佷箙鎬ф鏋?/SPAN>
鎸佷箙鎬ф鏋?/I> 鐢ㄦ潵鍦ㄥ簲鐢ㄧ▼搴忓眰鍜屾暟鎹簱涔嬮棿鏉ュ洖縐誨姩鏁版嵁銆侶ibernate 鍜?Rails 鐨勬寔涔呮ф鏋跺彲浠ュ綊綾諱負瀵硅薄/鍏崇郴鏄犲皠錛圤RM錛夊伐鍏鳳紝榪欐剰鍛崇潃瀹冧滑鎺ュ彈鏁版嵁鐨勫璞¤鍥撅紝騫跺皢璇ヨ鍥炬槧灝勫埌鍏崇郴鏁版嵁搴撳唴鐨勮〃涓備嬌鐢ㄤ袱縐嶆鏋剁殑鐩殑閮芥槸涓轟簡鍑忓皯涓庡叧緋繪暟鎹簱鏈夊叧鐨勫紑鍙戞椂闂淬備絾鏄紝鍥?4 婕旂ず浜嗕袱鑰呭湪璁捐鍜岄厤緗笂鐨勪竴浜涙牴鏈尯鍒?
鍥?4. Active Record 鍜?Hibernate 鎸佷箙鎬ф鏋剁殑姣旇緝
Hibernate
Hibernate 鍩轟簬 Data Mapper 妯″紡錛屽湪榪欑妯″紡涓紝鐗瑰畾鐨勬槧灝勫櫒綾?Session
璐熻矗鍦ㄦ暟鎹簱涓寔涔呭瓨鍌ㄥ拰媯绱㈡暟鎹侶ibernate 鍙互鎸佷箙瀛樺偍浠諱綍 Java 瀵硅薄錛屽彧瑕佽繖涓璞$鍚?JavaBean 瑙勮寖銆俋ML 鏄犲皠鏂囦歡鎻忚堪浜嗗浣曞皢綾繪槧灝勫埌鏁版嵁搴撲腑鍏蜂綋鐨勮〃錛屽茍鎻忚堪浜嗙被涓庡叾浠栫被鐨勫叧緋匯?/P>
娓呭崟 3 鏄劇ず浜?Hibernate 鏄犲皠鏂囦歡鐨勪竴涓疄渚嬨?CODE>class 鏍囩鎶?Order
瀵硅薄鏄犲皠鍒?ORDERS
琛紝榪樻湁璁稿瀛愭爣絳劇敤浜庢弿榪板叾灞炴с両D 璁㈠崟鍚嶇О錛屼互鍙婂悓 models.Item
鐨勪竴瀵瑰鍏崇郴銆?A xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">娓呭崟 4 鏄劇ず浜?Order
綾繪湰韜?/P>娓呭崟 3. Order.hbm.xml
|
|
鍙嶅皠鍜屽厓緙栫▼ 浠ヤ笅浠g爜灝嗗疄鐜板弽灝勶細
榪欎釜浠g爜灝嗗疄鐜板厓緙栫▼錛?/P>
|
Rails 鐨?ORM 妗嗘灦鍙綔 Active Record錛屽畠鍩轟簬鍚屽悕鐨勮璁℃ā寮忋侻artin Fowler 灝?Active Record 鎻忚堪涓衡滃寘瑁呮暟鎹簱琛ㄦ垨瑙嗗浘涓暟鎹鐨勫璞★紝灝佽鏁版嵁搴撹闂紝鍦ㄦ暟鎹笂娣誨姞鍩熼昏緫鈥濄傚湪 Rails 涓紝姣忎釜鍩熷璞¢兘灝嗘墿灞曟彁渚?CRUD 鎿嶄綔鐨?ActiveRecord::Base
銆?/P>
涓?Hibernate 涓鏍鳳紝Active Record 涓嶉渶瑕佹槧灝勬枃浠訛紱瀹為檯涓婏紝浣跨敤 Active Record 鐨勫紑鍙戜漢鍛樹笉闇瑕佸 getter 鎴?setter銆佺敋鑷崇被鐨勫睘鎬ц繘琛岀紪鐮併傞氳繃涓浜涙紓浜殑璇嶆眹鍒嗘瀽錛孉ctive Record 鑳藉鍒ゆ柇鍑猴紝Order
綾誨皢鏄犲皠鍒版暟鎹簱涓殑 ORDERS
琛ㄣ備嬌鐢?Ruby 鍙嶅皠鍜屽厓緙栫▼鐨勭粍鍚堬紝琛ㄧ殑鍒楀彲浠ュ彉鎴愬璞$殑灞炴с傝闂櫒鍜岃皟鏁村櫒涔熸坊鍔犱簡榪涙潵銆?/P>
娓呭崟 5 鏄劇ず浜?Order
綾葷殑瀹屾垚鍚庣殑浠g爜銆傚湪 Order
綾諱綋涓湁涓琛屼唬鐮佸畾涔変簡瀹冧笌 Item
瀵硅薄鐨勫叧緋匯?CODE>has_many 鏄竴涓潤鎬佹柟娉曡皟鐢紝絎﹀彿 :items
鏄畠鐨勫弬鏁般侫ctiveRecord 鐢?:items
鍙戠幇 Item
鍩熷璞★紝鐒跺悗灝嗚繖涓?Item
瀵硅薄鏄犲皠鍥炴暟鎹簱涓殑 ITEMS
琛ㄣ?/P>娓呭崟 5. order.rb
|
鍍?娓呭崟 5 閭f牱緙栫爜鐨?Order
綾誨湪榪愯鏃舵彁渚涗簡涓浜涚被鍜屽疄渚嬫柟娉曘傝〃 2 鎻愪緵浜嗗彲鍦?Order
涓婁嬌鐢ㄧ殑鎿嶄綔鍜屽睘鎬х殑閮ㄥ垎鍒楄〃錛?
綾繪柟娉?/B> | 瀹炰緥鏂規硶 | 灞炴?/B> |
|
|
|
緇撴潫璇?/SPAN>
铏界劧 Ruby on Rails 鏄竴涓潪甯告柊銆佷護浜哄叴濂嬬殑妗嗘灦錛屽茍涓斿湪 Web 紺懼尯涓凡緇忓紩璧蜂簡浜轟滑鐩稿綋鐨勫叴瓚o紝浣嗘槸瀹冪殑鏍稿績鏋舵瀯浠嶇劧閬靛驚鍦?J2EE 涓彂鐜扮殑鍩烘湰妯″紡銆傚紑鍙戞妸涓や釜妗嗘灦鍒嗗紑鐨?Web 搴旂敤紼嬪簭鏄竴縐嶅悎鐞嗙殑鏂規硶銆俁ails 鏇村枩嬈㈡竻妤氱殑浠g爜鑰屼笉鏄厤緗枃浠訛紝鑰?Ruby 璇█鐨勫姩鎬佹ц川鍦ㄨ繍琛屾椂鐢熸垚浜嗗ぇ閮ㄥ垎綆¢亾 浠g爜銆傚ぇ澶氭暟 Rails 妗嗘灦閮芥槸浣滀負鐙珛欏圭洰鍒涘緩鐨勶紝鑰屼笖搴旂敤紼嬪簭寮鍙戣兘澶熶粠涓緇勫悓綾葷粍浠跺彈鐩娿傜浉姣斾箣涓嬶紝鍏稿瀷鐨?J2EE 鍫嗘爤鍊懼悜浜庢瀯寤哄湪閫氬父鐙珛寮鍙戠殑鏈濂界殑緇勪歡涔嬩笂錛屽父甯哥敤 XML 榪涜閰嶇疆騫跺皢緇勪歡緇勫悎鍦ㄤ竴璧楓?/P>
閭d箞錛屾槸鍚﹀簲璇ヨ冭檻瀵逛笅涓涓?Web 搴旂敤紼嬪簭浣跨敤 Rails 鍛紵鍡紝涓轟粈涔堜笉鍛紵瀹冩槸緙栧啓寰楀緢濂界殑緇勪歡鍫嗘爤錛屽畠浠郊姝や箣闂村伐浣滃緱寰堝ソ錛屽茍涓斿熀浜庤涓氭帴鍙楃殑浼佷笟妯″紡銆俁uby 璇█鏀寔蹇熷紑鍙戯紝騫墮氳繃鐢熶駭澶у鏁板簲鐢ㄧ▼搴忕閬撴潵娣誨姞鍒版鏋躲傜啛鎮?Java 涓栫晫涓殑 MVC 鍜?ORM 妗嗘灦鐨勪漢浠湪鐢?Rails 琛ㄨ揪鑷繁鐨勬濇兂鏃舵病鏈変換浣曞洶闅俱?/P>
涓?J2EE 涓璧峰垎鍙戜細涓嶄細鏈夊埄浜?Rails錛熺粷瀵逛笉瑕併侸2EE 鏄竴涓凡緇忚緗ソ鐨勬爣鍑嗭紝鏈夎澶氬浐瀹氱殑瀹炵幇錛岃屼笖錛屾渶閲嶈鐨勬槸錛屽畠鏄竴涓粡榪囬獙璇佺殑鎶鏈傛垜寤鴻鎮ㄤ笅杞戒竴浠?Rails 鐨勫壇鏈紝騫跺紑濮嬭嚜宸遍捇鐮斿畠銆傝澶氬彲鐢ㄧ殑鏁欑▼閮芥槸浠嬬粛鎬х殑錛岃繖浜涙暀紼嬪彲浠ヨ鎮ㄧ珛鍗沖紑濮嬩嬌鐢?Rails銆傚啀嬈″0鏄庯紝鎴戝茍涓嶈兘淇濊瘉鎮ㄤ細閫氳繃浣跨敤 Rails 寰楀埌蹇箰錛屼絾鏄垜鏁㈡墦璧屾偍浼氭劅鍒版弧鎰忋?/P>
鍏充簬浣滆?/SPAN>![]() |