idea搭建JavaWEB項目, servlet, tomcat


【博客園cnblogs筆者m-yb原創,轉載請加本文博客鏈接,筆者公眾號aandb7 愛碼一生,QQ群927113708, github: https://github.com/mayangbo666】

https://www.cnblogs.com/m-yb/p/10925688.html

這里我決定寫個idea 搭建項目的筆記:

首先打開idea,

選擇新建項目, 左側選擇Java, 項目的SDK JDK 我這里用的是jdk1.8, 額外的libs和框架由於想鍵JavaWeb項目, 因此選擇Java EE的 Web Application web應用,

下一步, 填寫項目名和項目文件根路徑, 

完成后, 在新窗口新建打開新項目, 我是idea2017.2.2版本, 可以看到項目層次結構如下:

下一步, 先來配置web應用運行在的Tomcat容器上, 

分別按照1,2,3點擊選擇Local進入,

1,2,3,4,5分別進行檢查配置操作,

看到警告, 沒有項目被部署, 點擊Fix, 來到部署界面,

如果?處是空的則采取手動添加, 

點擊+號, 選擇Artifact項目,

這里填寫application context, 

這里講下瀏覽器將要訪問的路徑,

跟tomcat的ip, 端口號有關,以及此處配置的application context對應訪問接受那個項目那個uri,

localhost:8080/javaweb1111/

這里填完application context, 返回tomcat server配置處, 切換到update 熱部署選項,

apply應用, ok,

至此tomcat配置完畢,

大致瀏覽下項目結構,

現在還缺少一些lib jar包,

下面先搞一個servlet,

src右鍵,選擇新建servlet,  

項目結構圖如下,

看到src源碼包里面已經有了MyServlet類,

import java.io.IOException;

public class MyServlet extends javax.servlet.http.HttpServlet {
    protected void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {

    }

    protected void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {

    }
}

發現找不到servlet依賴, Alt+Enter 添加Java EE 6 JARs依賴,

項目里沒有現成的java ee 6 jars lib包使用, 就下載,

下載完成, 加載完成, 發現不報錯了,

為了訪問之后, 有效果, 這里在doGet里面加入后台輸出語句,

瀏覽器輸入url回車直接訪問,是get類型的請求, 就會執行后台的doGet方法, 如果此時想調用doPost, 也可以在doGet里面調用doPost方法,

import java.io.IOException;

public class MyServlet extends javax.servlet.http.HttpServlet {
    protected void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {
        System.out.println("doPost()...");
    }

    protected void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {
        System.out.println("doGet()...");
//        doPost(request, response);
    }
}

寫完代碼, 再進行web.xml配置, 配置一個servlet-mapping 映射標簽,

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
    <servlet>
        <servlet-name>MyServlet</servlet-name>
        <servlet-class>MyServlet</servlet-class>
    </servlet>

    <servlet-mapping>
        <servlet-name>MyServlet</servlet-name>
        <url-pattern>/get233</url-pattern>
    </servlet-mapping>
</web-app>

根據提示添加, 將此servlet-mapping關聯到MyServlet類上, url配置為 /get233, debug方式啟動tomcat, 注意不要斷點,

啟動如果彈出需要允許java聯網則允許,

啟動完成, 沒有報錯, 則進行訪問,

localhost:8080/javaweb1111/get233

發現前后台反饋正常, 后台打印出東西, 至此完畢.

 最后補一張另一種依賴方式, 除了依賴java ee 6 jars也可等效替換為依賴tomcat內置lib下面的兩個包:

jsp-api.jar和servlet-api.jar

也可正常使用.


免責聲明!

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



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