IDEA 2021.2 新建JavaWeb項目及Tomcat部署


前文:JSP 簡單入門與 IDEA 開發環境配置

參考鏈接:

  1. https://zhuanlan.zhihu.com/p/68133583
  2. https://www.cnblogs.com/javabg/p/7976977.html

一、Tomcat

  • 操作如下:File | Settings | Build, Execution, Deployment | Application Servers

  • 部署成功

二、Java Web項目

IntelliJ IDEA 2021.2 這個新版本,不管是在創建項目上,還是在進行一些選項的配置上,與之前的版本相比都有些許的不同。

1. 新建module

  • 注意:普通java項目,而不是Java Enterprise;

2. 添加框架支持

  • 創建完Java項目后,右擊項目,選擇Add Frameworks Support;

  • 選擇 Java EE8

  • 選中Web Application,默認create web.xml

  • 目錄結構變化,如下

三、配置

此時建議

  1. WEB-INF 下建 libclasses 文件夾,並在 Modules 的 Paths 把輸出文件夾指向WEB-INF.classes

    即將后面編譯的class文件默認生成到classes目錄下

  2. 點擊 Modules -> 選中項目 JavaWeb -> 切換到 Dependencies 選項卡 -> 點擊右邊的“+” -> 選擇 “JARs or directories...”,選擇創建的lib目錄

    即將未來使用的第三方包引用在此目錄

  3. 配置打包方式Artifacts點擊 Artifacts選項卡,IDEA會為該項目自動創建一個名為“JavaWeb:war exploded”的打包方式,表示 打包成war包,並且是文件展開性的,輸出路徑為當前項目下的 out 文件夾,保持默認即可。另外勾選下“Build on make”,表示編譯的時候就打包部署,勾選“Show content of elements”,表示顯示詳細的內容列表。

Ctrl+Shift+Alt+s,進入Project Structure

  • 設置sources目錄,並勾選sources root

  • 打包jar包,首先cancel選定module

    博主這里借用一下其他教程的兩張圖

jar

  • 改名再選定add to module或者project

module library

四、Tomcat實例

  • 選擇 Run -> Edit Configuration -> 左上角加號 -> Tomcat Server-> Local

  • 點擊Application server右邊的Configure,找到你放置的Tomcat的目錄

  • 選擇第二個選項卡Deployment-> + -> 選擇Artifacts ,說明:此處的Application context是指定本工程的根目錄,可以對項目的訪問地址進行修改,如果只有一個/,則默認表示localhost:8080/,后面直接跟需要訪問的頁面即可,Apply;

    個人選擇改為 /JavaWeb

  • 配置完成工具欄出現如下標志,但未啟動

    此時可以修改內部的實時更新,Updata classes and resources

  • 點擊右下角的services,啟動綠色的三角按鈕 Run,啟動 Tomcat;

  • 可以看到 Tomcat bin 目錄的 catalina Run,打開 index.jsp 運行;

  • Tomcat 已啟動

  • 打開瀏覽器,輸入:

    localhost:8080/JavaWeb or http://127.0.0.1:8080/JavaWeb/

至此,IDEA 創建並設置 JavaWeb 工程全部完成,下面是在其中編寫並運行Servlet。


\[QAQ \]


五、Servlet簡單實現

1. 編寫servlet源文件

src 目錄下新建包 MyServlet,在包內新建 HelloServlet.java 並編寫一下代碼並進行編譯:

因為 Servlet 類其實就是一個普通的 Java 類,IDEA 中可以直接右鍵→new→Create New Servlet。會自動幫你生成繼承了 HttpServlet 類的模板,十分方便。類文件生成后,我們便可以寫自己的 Servlet 服務啦,先寫一個最簡單的 Hello World 服務,即用戶訪問指定 URL 地址,便調用該 Servlet 在瀏覽器中輸出 Hello World。在這里,我們使用注解的方式將 Servlet 服務映射到URL:/helloWorld 上。

package MyServlet;

import java.io.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;

@WebServlet(name = "HelloWorldServlet",urlPatterns = "/helloWorld")
public class HelloServlet extends HttpServlet {
    private String message;

    public void init() {
        message = "Hello World!";
    }

    public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
        response.setContentType("text/html");

        // Hello
        PrintWriter out = response.getWriter();
        out.println("<html><body>");
        out.println("<h1>" + message + "</h1>");
        out.println("</body></html>");
    }

    @Override
    public void destroy() {
        super.destroy();
    }
}

編譯后會發現在 classes 目錄下生成了 HelloServlet.class 文件

2. 部署servlet

方法一:

WEB-INF目錄下 web.xml 文件的 <web-app>標簽中添加如下內容:

<!-- 有點問題,待補 -->

方法二:

使用注解的方式將 Servlet 服務映射到URL:/helloWorld 上。
在HelloWorld文件的類前面加上:

@WebServlet(name = "helloServlet", value = "/hello-servlet")
// or 
@WebServlet(name = "HelloWorldServlet",urlPatterns = "/helloWorld")
// or
@WebServlet("/HelloWorld")

控制台出現successfully則tomcat服務啟動成功!

打開瀏覽器輸入:localhost:8080/JavaWeb/helloWorld 即可查看servlet運行狀態了.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM