概述
首先需要从Tomcat的安装lib目录导入servlet-api这个jar,这样才能继承HttpServlet方法
package com_1;
/*单个实例性*/
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class CountServlet extends HttpServlet{
//private int count = 0;
private int count;
@Override
public void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html");
/*resp.setCharacterEncoding("GBK");
req.setCharacterEncoding("GBK");
在配置问文件中设置编码格式*/
ServletConfig config = super.getServletConfig();
String sc = config.getInitParameter("count");
System.out.println(sc);
ServletContext ctx = super.getServletContext();
String encoding = ctx.getInitParameter("encoding");
System.out.println("encoding:" + encoding);
resp.setCharacterEncoding(encoding);
req.setCharacterEncoding(encoding);
//同步代码块 解决多线程并发问题 解决时间片问题
synchronized (this) {
count++;
PrintWriter pw = resp.getWriter();
pw.println("<h1>你是第" + count + "个访问者 </h1>");
pw.flush();
}
}
}
配置文件web.xml
设置响应的编码格式,再配置文件中设置的好处:在以后的开发中若存在编码格式错误只需要在配置文件中修改就行,不用再修改代码中的全部写有编码的地方,这样可以减少代码的工作量。
<context-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</context-param>
<servlet>
<servlet-name>countServlet</servlet-name>项目名也可以随意定义
<servlet-class>com_1.CountServlet</servlet-class>项目的全类名
<init-param>在配置文件中为count初始化,也可在代码中完成
<param-name>count</param-name>
<param-value>1</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>countServlet</servlet-name>
<url-pattern>/count</url-pattern>设置对外访问路径
</servlet-mapping>
最后
以上就是帅气星月为你收集整理的Servlet的单个实例的全部内容,希望文章能够帮你解决Servlet的单个实例所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复