Servlet2
Servlet2
目录
ServletConfig接口
该接⼝是⽤来描述 Servlet 的基本信息的。
1.ServletConfig的基本方法
getServletName() 返回 Servlet 的名称,全类名(带着包名的类名)
getInitParameter(String key) 获取 init 参数的值(web.xml)
getInitParameterNames() 返回所有的 initParamter 的 name 值,⼀般⽤作遍历初始化参数
getServletContext() 返回 ServletContext 对象,它是 Servlet 的上下⽂,整个 Servlet 的管理者。
2.ServletConfig 和 ServletContext 的区别:
ServletConfig 作⽤于某个 Servlet 实例,每个 Servlet 都有对应的 ServletConfig,ServletContext 作⽤ 于整个 Web 应⽤,⼀个 Web 应⽤对应⼀个 ServletContext,多个 Servlet 实例对应⼀个 ServletContext。
⼀个是局部对象,⼀个是全局对象。
Servlet的层次结构
1.Servlet的层次结构
Servlet ---》GenericServlet ---〉HttpServlet
HTTP 请求有很多种类型,常⽤的有四种: GET 读取 、POST 保存、PUT 修改、 DELETE 删除
GenericServlet 实现 Servlet 接⼝,同时为它的⼦类屏蔽了不常⽤的⽅法,⼦类只需要重写 service ⽅ 法即可。
HttpServlet 继承 GenericServlet,根据请求类型进⾏分发处理,GET 进⼊ doGET ⽅法,POST 进⼊ doPOST ⽅法。
开发者⾃定义的 Servlet 类只需要继承 HttpServlet 即可,重新 doGET 和 doPOST。
package com.wildfire.servlet;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet("/getservlet")
public class GetServlet extends HttpServlet {
public GetServlet() {
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//通过这个方法得到的都是String类型,如果对类型有需要,需要进行强制类型转化
String idStr= req.getParameter("id");
Integer id=Integer.parseInt(idStr);
System.out.println(idStr);
resp.getWriter().write(idStr);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
super.doPost(req, resp);
}
}