我讀struts in action,和它說的CGI是支柱的使能技術之一,有人能幫助我瞭解什麼是CGI和支柱之間的關係?CGI和Apache Struts的
回答
CGI和Struts是兩個 「Web應用程序框架」。我相信很多人可能會不同意將CGI分類爲Web應用程序框架,並且我懷疑這個術語在CGI是處理動態Web資源請求的主要框架時不存在,但它基本上是相同的事情。
一個萬維網應用程序框架只是提供開箱即用基礎設施來處理必須爲每個Web請求的處理來完成的家務。這些包括解組傳入的請求參數,驗證該數據,處理響應中的HTTP頭等.CGI是其中最早的機制之一。 Struts是近十年的事實上的Web應用程序框架,幾年前結束。
在過去的幾年裏,一個全新的一批「第二代」的Web應用程序框架已經出現了。這些新功能包括對快速開發的支持,對Ajax的支持,對單元測試的支持以及對配置模式的約定等。
所以,這應該回答你的問題。但是,正如評論人員所建議的,除非您進行某種歷史研究,否則沒有理由繼續閱讀關於Struts的內容。 Struts2是一個很好的選擇,還有其他的。這個話題是一個熱門話題。並詢問哪個框架最好是在stackoverflow上廣泛平移的路徑。
雖然它是一個完全有效的思想都有,事實是,它只是沒有那麼簡單。如果你用一般意義來提問,那麼就沒有答案;至少有六個不錯的選擇(我純粹是憑空選出第六個)。如果你對你的應用有特定的要求,那麼你可以開始做一些評估。但是,評估只能根據特定的要求進行。
謝謝,實際上我認爲Struts2真的是最好的MVC框架之一,但我認爲了解它的最好方法之一是瞭解它的歷史,所以我首先從struts 1.0開始,然後轉到struts2,以便我可以告訴他們之間有什麼區別。 –
@ Joe.wang我當然可以欣賞你的學術態度。我自己就是這樣。我會指出,雖然Struts - > Struts 2是一個誤導性的血統。 Struts2與Struts 1.x沒有代碼基礎。還有另一個框架,WebWork,它變成了Struts2。一個快速的互聯網搜索會給你的細節。 – chad
@chat謝謝,你提供給我們非常好的評論和幫助學習struts或者struts 2.尤其是從struts的書作者的行動中。 –
- 1. apache上的Golang CGI
- 2. Perl + Apache + CGI
- 3. CGI後處理Hiawatha和Apache的差異
- 4. Apache Struts和Java EE之間的區別?
- 5. Apache mod_rewrite:/ SomeFunkyText/cgi-bin/... ==>/cgi-bin/
- 6. 在Apache和NGINX之間共享PHP-CGI
- 7. Apache NetUI和Struts有什麼區別?
- 8. 一個Apache服務器[CGI]
- 9. 在Apache中設置Ruby CGI
- 10. apache在「realtime」上加載cgi
- 11. 配置Apache運行python(CGI)
- 12. 我的cgi腳本無法寫入Apache的cgi-bin文件夾
- 13. Apache + Tomcat + Struts 2配置
- 14. java.lang.NoClassDefFoundError:org/apache/struts/taglib/html/FormTag
- 15. Perl CGI或CGI :: Fast在Debian Lenny上的Apache 2.2下
- 16. 與Python的Apache錯誤日誌CGI
- 17. apache服務器上的Python cgi
- 18. 用於Apache cgi腳本的LD_LIBRARY_PATH
- 19. 的Apache Struts的:無法檢索的ActionForward
- 20. 運行Struts 1和Struts 2
- 21. 的WebSocket和Perl CGI
- 22. 配置Apache使用Python就像CGI PHP
- 23. Apache在Windows上更改CGI解釋器
- 24. 獲取Apache CGI在Python中發送JSON
- 25. Apache使用ssi擴展cgi輸出
- 26. Apache CGI - 非零退出代碼
- 27. 無法寫入與Apache CGI腳本
- 28. Ruby Apache CGI腳本頭過早結尾
- 29. 使用Apache + SSL執行CGI腳本
- 30. 不能讓Apache執行perl CGI腳本
_CGI是實現技術之一_我不這麼認爲,因爲它已經過時了。 –
Struts和CGI差不多。爲您的報價添加更多上下文。 CGI是什麼的支持技術之一? –
@JBNizet更新了,像大家使用的struts這樣的流行框架是什麼? –