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。