在eclipse中新建Dynamic web project時選擇2.5和3.0的區別(裡面涉及servlet和tomcat的問題)
阿新 • • 發佈:2019-01-29
1、Dynamic web project時選擇2.5和3.0是指servlet的版本,是2.5的還是3.0的
servlet3.0以後支援非同步
2、dynamic web module和對應的TOMCAT 版本
dynamic web module 2.4 對應Tomcat 5.5
dynamic web module 2.5 對應Tomcat 6.0
dynamic web module 3.0 對應Tomcat 7.0
具體可以參考如下博文:
6、tomcat裡邊的servlet.jar對應哪個版本的java API?
追問:這張表我看到了,但是看不太明白,裡邊的那個servlet/jsp 的版本是怎麼回事呀?servlet-api.jar 裡邊的.class檔案不是javaee 的servlet包裡邊的類的實現嗎?
servlet/jsp當然有自己的版本。每次重大的升級,都會意味著版本的升級。 可能你現在多半在糾結servlet-api和javaee的關係。下面舉個例子: MyEclipse 8新建webProject後, MyEclipse自動在專案中引用了Java EE 5 Libraries,裡面包括了 javaee.jar,jsf-impl.jar,jsf-api.jar,jstl-1.2.jar這四個包,其中javaee.jar包中包括了編寫servlet的類, 在專案中新建一個servlet。 用MyEclipse的釋出功能把專案釋出到Tomcat後,其中的 jsf-impl.jar,jsf-api.jar,jstl-1.2.jar 這三個包也一同釋出到了應用的lib目錄中, javaee.jar卻並沒有一同釋出到lib中。Tomcat啟動應用正常,可是應該報錯找不到HttpServlet才對啊。 原來在Tomcat安裝目錄下的lib裡有一個servlet-api.jar, 在這個包裡也包括了編寫servlet的類,所以Tomcat啟動應用並沒有因為找不到HttpServlet而報錯。
嗯,您說的這些我明白,基本上也解決了我的疑問,謝謝,我還想再問下,上面你給的那個圖最後一列中的 "Minimum java version" 指的是javaee 的版本,還是javase的版本?我認為是javaee的版本,對嗎?追答:
javaSE. 你要知道tomcat也是用java編寫的