轉自:http://www.blogjava.net/shaofan/archive/2007/04/06/109007.html
假設:用兩者寫一個最小的WEB程式。
過程可以參照:
1.struts的就太多了,隨便哪個都可以
2.python/django可以看limodou寫的Django step by step
Java/Struts/JSP | Python/Django | |
開發步驟 | 1.在web.xml裡配置struts的servlet 2.在struts-config.xml裡配置URL和action的對映 3.寫action 4.寫JSP |
1.在urls.py裡配置URL到方法的對映 2.寫相應的方法 3.寫HTML模板 |
呼叫過程 | 1.根據web.xml的對映呼叫struts的servlet controller 2.servlet controller根據struts-config.xml的對映呼叫相應的action 3.action處理請求 4.JSP渲染顯示 |
1.根據urls.py的對映呼叫相應的方法 2.方法處理請求 3.HTML渲染顯示 |
相比之下前者用了兩層才把一個HTTP請求對映到實際處理的方法:第一次是servlet的對映,第二次是struts action的對映。
而django則一次就從URL對映到相應的方法了。
另外一個比較顯著的區別,也是基於java和python的語言上的區別吧,java的所有方法必需包含在一個類中,因此action mapping配置時是對映到類,而action在實現類則應實現事先約定的方法(通過繼承或實現介面)。而django則直接得多,可以直接在配置裡寫明處理請求的方法名。