<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
首先,我們先在idea裡建立出一個Maven專案出來,除了路徑要填成自己的希望路徑以外,其他都可以一路next和finish
建立好後,我們需要在pom.xml中加上一組<dependencies>
標籤,在標籤裡引入servlet api的jar包,引入方法為從maven中央倉庫中複製貼上即可maven中央倉庫
開啟後,我們在搜尋方塊中輸入servlet,其中第一個就是我們想要的結果
我們選擇與Tomcat對應的版本號的Java Servlet API
(博主的Tomcat版本為8,所以就選擇了3.1.0這個版本號)
此時我們直接將中間這段程式碼複製到我們建立好的<dependencies>
標籤中即可
注意:剛開始引入後程式碼可能為紅顏色,表示maven正在下載資源,只需等一會時間,或者過一會重新整理一下便可以引入成功
我們建立的程式碼,需要繼承自HttpServlet
類,然後才能讓這個類被Tomcat給呼叫到,如果剛才Maven的依賴下載的不正確,此時HttpServlet是不能被補全出來(標紅的)
//super.doGet(req, resp); 此方法是直接構造了一個錯誤的響應(狀態碼為405的響應),一定要將其刪掉
補充:
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException
doGet是HttpServlet這個父類別的方法,這個方法的引數分別是HttpServletRequest(HTTP請求)和HttpServletResponse(HTTP響應),doGet方法裡要做的事情就是根據請求生成響應。
@Override
我們此處重寫了這個doGet之後,並不需要手動呼叫doGet,而是由Tomcat自動來呼叫;也不需要咱們手動的建立HelloServlet範例,也是由Tomcat自動建立範例。
這個操作,就是往HTTP響應的body中寫了一個"hello world"字串。
剛才我們雖然將相關字串構造成功了,但我們還不知道傳送一個什麼樣的請求才能執行到HelloServlet類的程式碼,因此,我們需要將類和一個HTTP特定請求相關聯,方法就是在類前面加上這個註解:
根據HTTP請求與url路徑進行關聯即可
此時,完整程式碼如上所示
要想讓此程式在Tomcat上執行,只是依靠Maven建立的目錄和檔案是不夠的,還得我們自己來建立一些額外的內容
首先我們在main目錄下建立一個新的webapp目錄
緊接著,在剛才建立的目錄底下再建立一個WEB-INF目錄
然後,我們在剛剛建立的目錄底下再建立一個xml檔案即可(如果是一個靜態頁面部署到Tomcat上是不需要xml檔案的,但如果是servlet程式碼,要想讓Tomcat識別,必須要有此檔案)
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Archetype Created Web Application</display-name> </web-app>
最後,我們將這些內容寫進去即可
完成以上步驟後,我們就需要把我們當前的程式碼進行編譯然後生成一個壓縮包出來,此時,我們可以繼續通過maven來完成 由於我們通過maven打出來的包是jar格式的,Tomcat不能直接識別jar格式的包,jar包一般是使用java -jar命令來執行的,而Tomcat所識別的格式是war這個格式,因此我們應該打成一個war格式的包
我們直接在pom.xml中手動修改即可
此時直接雙擊就可以進行打包了
結果如上所示。
此時博主將名字設定成servlet1
此時,我們繼續打包即可生成我們想要名稱的包
打完包後,我們將生成的war包部署到Tomcat上即可(將war包拷貝到Tomcat的webapps的目錄中)
然後我們啟動Tomcat後,會在webapps底下生成一個與war包同名的目錄
當前面的所有步驟都完成後,接下來我們就可以檢驗了,只需要通過瀏覽器存取一下Tomcat,構造一個特定的請求,觸發到特定的程式碼即可
到此這篇關於實現一個基於Servlet的hello world程式詳解步驟的文章就介紹到這了,更多相關Servlet hello world內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45