如何在servlet中记录用户访问次数 的类代码告诉我吗?
答案:2 悬赏:20
解决时间 2021-03-20 19:27
- 提问者网友:他是我的あ男人
- 2021-03-20 14:03
如何在servlet中记录用户访问次数 的类代码告诉我吗?
最佳答案
- 二级知识专家网友:猎杀温柔
- 2021-03-20 14:54
package y2javaee.sg.ch03;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class Counter extends HttpServlet {
private static final long serialVersionUID = 1L;
public Counter() {
super();
}
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 输出中文
response.setContentType("text/html;charset=GBK");
//创建session
HttpSession session = request.getSession(true);
Object count = session.getAttribute("COUNTER");
int counter = 0;
if (count == null) {
counter = 1;
//将第一次计数存入session
session.setAttribute("COUNTER", new Integer(1));
} else {
counter = ((Integer) count).intValue();
counter++;//计数加一
//将计数存入session
session.setAttribute("COUNTER", new Integer(counter));
}
PrintWriter out = response.getWriter();
// 输出信息
out.println(" 欢迎你" + counter + "次访问xx网站!");
out.flush();
out.close();
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
public void init() throws ServletException {
// Put your code here
}
}
这是以前写的
但是没有用filter
用filter 也可以
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class Counter extends HttpServlet {
private static final long serialVersionUID = 1L;
public Counter() {
super();
}
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 输出中文
response.setContentType("text/html;charset=GBK");
//创建session
HttpSession session = request.getSession(true);
Object count = session.getAttribute("COUNTER");
int counter = 0;
if (count == null) {
counter = 1;
//将第一次计数存入session
session.setAttribute("COUNTER", new Integer(1));
} else {
counter = ((Integer) count).intValue();
counter++;//计数加一
//将计数存入session
session.setAttribute("COUNTER", new Integer(counter));
}
PrintWriter out = response.getWriter();
// 输出信息
out.println(" 欢迎你" + counter + "次访问xx网站!");
out.flush();
out.close();
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
public void init() throws ServletException {
// Put your code here
}
}
这是以前写的
但是没有用filter
用filter 也可以
全部回答
- 1楼网友:怪咖小青年
- 2021-03-20 15:18
servletcontext context = getservletcontext();
integer count = null;
count = context.getattribute("count");
if(count==null){
count = new integer(1);
}else{
count++;
}
context.setattribute("count",count);
上面代码写在service(httpservletrequest request,httpservletresponse response);这个方法里面
不明白的话我可以把整个代码写出来
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯