本文主要介绍使用Servlet使用的具体流程及注意事项
1、使用eclipse创建Dynamic Web Project,创建过程中勾选自动生成Web.xml文件
2、导入需要使用到的jar包,要使用HttpServlet、HttpServletRequest、HttpServletResponse等类需要导入Servlet-api.jar包,将该jar拷贝到/WebContent/WEB-INF/lib文件夹下,右击点击添加到项目路径,如果没有这个jar包,可以去tomcat安装路径下lib文件夹找找到。
3、编写Servlet,下面是一个例子
public class UserServlet extends HttpServlet {
public void init(){
ServletContext servletContext = this.getServletContext();
servletContext.setAttribute("count", 0);
}
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException{
ServletContext servletContext = this.getServletContext();//通过servletContext存储全局变量
int count = (int) servletContext.getAttribute("count");
count++;
servletContext.setAttribute("count", count);
resp.setContentType("text/html;charset=UTF-8");//设置response返回字符格式
resp.getWriter().println("<h1>这是第"+count+"次进入Servlet</h1>");
/* resp.setStatus(302);
resp.setHeader("Location", "/ServletTest/index.jsp");*/
}
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException{
doGet(req,resp);
}
}
每一个servlet的生命周期从第一次使用该servlet一直持续到服务器被关闭,上面的例子中,通过重写Servlet接口的init方法,在ServletContext中存储了一个名为count的变量,每一个web服务都只有一个ServletContext从服务启动时一直持续到服务关闭,
在servlet中可以通过调用getServletContext方法或得到该服务的ServletContext,通过ServletContext的setAttribute方法和getAttribute方法可以在ServletContext中存储一些全局变量。
4、在web.xml中配置Servlet及其对应的访问路径如
<servlet>
<servlet-name>UserServlet</servlet-name>
<servlet-class>com.liujian.servlets.UserServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>UserServlet</servlet-name>
<url-pattern>/UserServlet</url-pattern>
</servlet-mapping>
5、启动tomcat,并在浏览器访问http://localhost:8082/ServletTest/UserServlet
得到页面显示如:这是第13次进入Servlet
每刷新一次页面,数字加一