Zarar Siddiqi寫了一篇題為"
Are JSPs Dead?,"的文章,文中不無夸張地建議,JSP技術應該也許根本不該出現在JavaEE開發的前沿陣地上,或許僅僅是ASP的原因吧.他說:
JSP給Java的應用的重用所帶來的阻礙是巨大的, J2EE中并沒有提供這種機制.而如果你非要這么做的話,則必然以犧牲其他模塊或應用的更大的可重用性為代價。對于容器的高度依賴導致了對SE的重用不可實現,同時測試工作也變得舉步維艱,您或許不得不建立一些Mock對象來觀察結果.JSP和Servlet一對一的綁定,對我來說也不是什么有趣的事情,后臺對JSP編譯為Java類的處理也毫無意義. 既然可以通過Servlet為網頁直接服務,為什么還要多余的推出一種混合的技術呢?
如果您還在考慮用JSP做您的MVC模型中的V部分來開發哪怕是一個中等大小的應用,您已經在犯嚴重的錯誤了。特別是,如果您的JSP僅僅作為視圖顯示的時候(頁面中沒有實際代碼,只有taglibs),因為,您甚至連它僅有的“優點”——內嵌Java代碼都沒有應用。如果您是那種認為標簽庫沒有想象中那么糟的人,那么您還是可以使用頁面腳本,以此來生產您認為合格的軟件。您已經無藥可救了。
Zarar建議使用Freemarker, Velocity, 以及AJAX 來替換JSP.
這實在是種有趣的想法, 因為不論我們喜歡與否 (Zarar顯然屬于“否”的行列) JSPs是Java EE中默認的顯示技術. JSP是否稱職呢? 是否還有其他的可以成為標準的技術呢? 您又在應用何種技術呢? 為什么? (那些還被迫夾在陳舊的項目的中的,仍在使用Struts 1.1和JSPs的“可憐”的朋友們呢?)
@2008 楊一. 版權所有. 保留所有權利