Idea創建Web工程
以新建模塊為例。
-
新建Maven項目
- 勾選【Create from artchetype】
- 選擇【org.apache.maven.archetypes:maven-archetype-webapp】
前面還有一個org.apache.cocoon:cocoon-22-archetype-webapp,不要誤選。
-
生成的結構中,沒有常規代碼文件夾,有一個webapp,這是web項目的特征。
模塊建成很快,但是等webapp文件夾創建出來需要等一會兒。
src
|--main
|--|--webapp
|--|--|--WEB-INF
|--|--|--|--web.xml
|--|--|--index.jsp
|--pom.xml
運行測試
- 右鍵 點擊【index.jsp】,運行起來,會404,但是會調出tomcat的面板。
- 在面板中雙擊模塊名,會正常顯示index.jsp
新建功能文件夾
默認建成的文件夾里沒有java和resources,也沒有test。test可以不要,但肯定需要java和resources。
src
|--main
|--|--java
|--|--resources
- 把文件夾設為相應的功能
Ctrl+Shift+Alt+S(Project Structure·項目結構)
選擇左側的Modules,選擇對應的模塊,選擇文件夾進行"Mask as"
測試Servlet
pom中添加依賴
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
</dependency>
寫Servlet
package org.ah.servlet;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet("/action")
public class MyServlet extends HttpServlet {
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
response.getWriter().write("success");
}
}
測試
重啟Tomcat,雙擊模塊名運行,輸入servlet的url。