依此網內容 <-點進去
改寫pom為以下方便講解:
同理複製一個寫法的範例:
實際code如下:
同理web.xml加一行<welcome-file>login.do</welcome-file>
執行Maven Update:
最後會有報錯(8080port已佔用):
所以pom再小改port:
瀏覽器看上圖的url:http://localhost:8090/
Everything is perfect!
Q1:程式是怎麼run在tomcat上的?
透過以下定義在pom檔內的tomcat:tomcat7-maven-plugin
依定義就會下載tomcat並運行!
Q2:程式是如何編譯?
依pom檔內定義:maven-compiler-plugin
所有的編譯動作(ex包Jar War執行等)都是由這個plugin協助執行
其中定義的java code版本Source為1.7
而包出來的目標target版本也為1.7
Q3:如下圖,我們什麼時候生出javax.servlet.http.HttpServlet套件?
其實就是pom裡定義的javaee-web-api的dependency會自動下載相關套件
其中包含了javax.servlet.http.HttpServlet
同理我們註解:
Maven lib會整個不見!
Q4:web.xml做什麼用?
由web.xml定義,當進到localhost:8090的網址時,會進到welcome-file指定的網頁去,如上圖我們有做login.do的url pattern的網站Servlet
由於沒有定義其他網站,所以可以省略如下
註:後來發現,若後來改用Spring管控,Servlet沒有extends HttpServlet,也
就是沒有Override doGet方法,此網址http://localhost:8090/
將不會依web.xml的welcome-file協助導向jsp頁面去