第一个web项目
1. 创建一个web项目
2. 创建一个包,再创建一个Servlet
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class MyServlet extends HttpServlet {
//继承HttpServlet类
//重写service方法
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
resp.getWriter().write("firstServlet");
System.out.println("fristservlet!!!");
}
}
- idea在创建中会有get和post的方法,是专门用来处理get请求和post请求的方法,但是service可以替代他们,servlet优先选择service方法。
3. 在web.xml中配置Servlet
idea中可能不会自动生成web.xml需要手动设置,因为在web3.0以上,官方更推荐使用注解的方法
- 打开项目结构
- 在最右边点击+号
选择web.xml即可
4. 配置Servlet
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
<!-- 配置servlet -->
<!-- 配置servlet路径 -->
<servlet>
<servlet-name>myy</servlet-name>
<!-- 包名+类名 -->
<servlet-class>com.maoyan.Servlet.MyServlet</servlet-class>
</servlet>
<!-- 配置映射 -->
<servlet-mapping>
<servlet-name>myy</servlet-name>
<url-pattern>/myy</url-pattern>
</servlet-mapping>
</web-app>
- 主要包含两个1. servlet 和 2. servlet-mapping
这里主要说一下,servlet-name可以随意取,class指定的是你的Servlet的全路径
每个servlet都要有一个映射,name与servlet的一致,url即为路径,可以不与name相同,相同只是代码更好理解。
可能有人会想,为什么不直接在localhost:8080/项目名后直接加servlet的全路径,这样更方便,不需要配置,但是学过反射的我们知道,可以通过反射来创建对象,这是很危险的。