servlet学习笔记
- servlet学习笔记(入门)
- 一、使用前提
- 二、配置
- 1、在maven的pom文件中引入servlet
- 2、创建servlet类
- 3、在tomcat中的部署描述符文件:web.xml(3.x以前版本必须在web.xml中配置)中配置servlet的映射
- 三、标准Java Web工程结构
- 四、Servlet的生命周期
- 五、使用注解配置Servlet(在3.x以后引入了Annotation)
servlet学习笔记(入门)
一、使用前提
代码语言:javascript复制必须基于tomcat才能使用,单独的servlet无法启动。
二、配置
1、在maven的pom文件中引入servlet
代码语言:javascript复制 <dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<!--对应tomcat的8.5.x版本,具体查看可以到tomcat.apache.org/whichversion.html中查看-->
<version>3.1.0</version>
</dependency>
</dependencies>
2、创建servlet类
代码语言:javascript复制import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class servlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
/*
使用IDE工具可以快速重写servlet的service方法
通过对service方法的重写可以完成http的通信过程
*/
super.service(req, resp);
}
}
方法 | 解释 |
---|---|
req.getParameter() | 获取单个参数 |
req.getParameterValues() | 获取多个同名参数 |
resq.getWriter() | 建立writer对象,响应请求 |
3、在tomcat中的部署描述符文件:web.xml(3.x以前版本必须在web.xml中配置)中配置servlet的映射
代码语言:javascript复制 <servlet>
<servlet-name>这里是servlet的别名</servlet-name>
<servlet-class>这里是servlet的完整路径</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>对应的servlet的别名</servlet-name>
<url-pattern>以根目录为准的servlet的url路径</url-pattern>
</servlet-mapping>
三、标准Java Web工程结构
组织结构 | 描述 |
---|---|
/ | JavaWeb应用根目录 |
/index.html | 默认首页 |
/WBB_INF | Web应用的安全目录,用于存放配置文件 |
/WBB_INF/web.xml | web.xml文件是“部署描述符文件”,是web项目的核心配置文件 |
/WEB_INF/classes | 存放编译后的classes文件 |
/WBB_INF/lib | 存放项目使用的jar包 |
/WBB_INF/MANIFEST.MF | 包含web应用的版本信息 |
四、Servlet的生命周期
- 装载 web.xml
- 创建构造方法
- 初始化init()方法
- 提供服务service()
- 销毁 destory()
五、使用注解配置Servlet(在3.x以后引入了Annotation)
- 核心注解:@WebServlet(“映射地址”)
示例:
@WebServlet("/anno")
public class AnnotationServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.getWriter().println("I'm annocation servlet !");
}
}