idea如何创建一个简单的Servlet项目
一、准备步骤
1、创建一个工程
一直点next创建就行。
2、添加Web application支持
勾选上Web Application,点击ok
3、部署Tomcat服务器
这里添加jdk
4、向服务器中添加项目
这里一般自动生成,如果没有自动生成,点击加号添加即可
这里可以修改项目名
5、向项目中导入所需要的JAR包
二、编写一个简单的Servlet
1、在web目录下创建一个Login.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Login</title>
</head>
<body>
<form action="/untitled/a" method="post"><!--/untitled是项目名,/a是请求路径-->
username:<input type="text" name="user"><br>
password:<input type="password" name="password"><br>
<input type="submit" value="登录">
</form>
</body>
</html>
2、在src创建并配置一个servlet类
package MyServlet;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
//这里用注解配置Servlet
@WebServlet(name = "MyServlet01",urlPatterns = "/a")//name是Servlet的名字,urlPatterns是请求路径(也可以在web文件下的WEB-INF下xml文件中配置)
public class MyServlet01 extends HttpServlet {
//继承HttpServlet类,并重写里面的doGet和doPost方法(快捷键Alt+insert)
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request,response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");//设置页面编码方式,避免生成乱码
PrintWriter out = response.getWriter();
String user = request.getParameter("user");//获取username框里的内容
String password = request.getParameter("password");//获取password框里的内容
//将内容打印到Servlet页面
out.print("username:"+user+"<br>");
out.print("password:"+password+"<br>");
}
}
下面是不用注解,在xml文件里面配置,servlet-class是Servlet类的路径
<servlet>
<servlet-name>MyServlet01</servlet-name>
<servlet-class>MyServlet.MyServlet01</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyServlet01</servlet-name>
<url-pattern>/a</url-pattern>
</servlet-mapping>
打开Login.html并输入
点击登录后,就会跳转到Servlet页面,其中untitled是项目名,/a是请求路径