什么是Servlet
Servlet 运行在服务端的Java小程序,是sun公司提供一套规范(接口),用来处理客户端请求、响应给浏览器的动态资源。但servlet的实质就是java代码,通过java的API 动态的向客户端输出内容。
Servlet快速入门
实现步骤:
1)创建类实现Servlet接口
2)覆盖尚未实现的方法—service方法
3)在web.xml进行servlet的配置
但在实际开发中,我们不会直接去实现Servlet接口,因为那样需要覆盖的方法太多, 我们一般创建类继承HttpServlet
实现步骤:
1)创建类继承HttpServlet类
2)覆盖doGet和doPost
3)在web.xml中进行servlet的配置
我们可以采用eclipse进行快速创建servlet,eclipse会自动配置好web.xml,并且提供一个默认的模板给你,但是模板不是太好用,这里贴出一个自己收藏的一个模板:
package ${enclosing_package};
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 ${primary_type_name} extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.getWriter().write("hello servlet...");
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
设置方法为:window-preference-Java-Edior-Templates,点击右侧的New,Name填写servlet,内容直接复制粘贴进去,描述随便写,点击确定保存。
在你新创建一个servlet之后,直接Alt+A全选,然后输入servlet回车,清楚明了的模板文件就生成完毕。
ServletContext对象
什么是ServletContext对象
ServletContext代表是一个web应用的环境(上下文)对象,ServletContext对象 内部封装是该web应用的信息,ServletContext对象一个web应用只有一个
问题:
一个web应用有几个servlet对象?----多个
ServletContext对象的生命周期?
创建:该web应用被加载(服务器启动或发布web应用(前提,服务器启动状态))
销毁:web应用被卸载(服务器关闭,移除该web应用)
以下为ServletContext和Servlet的基本关系,
怎样获得ServletContext对象
//创建对象
ServletContext servletContext = this.getServletContext()
//获得web应用中任何资源的绝对路径
String path = servletContext.getRealPath(realPath);//重要 重要 重要