Django 和 struts 对比
转自: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则直接得多,可以直接在配置里写明处理请求的方法名。