servlet实现浏览记录功能代码实现
时间: 2023-08-31 11:06:36 浏览: 40
可以通过在Servlet中获取HTTP请求的Referer头信息来实现浏览记录功能。具体实现代码如下:
```java
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class BrowseHistoryServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
private List<String> history = new ArrayList<String>();
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String url = request.getHeader("Referer");
if (url != null && !url.isEmpty()) {
history.add(url);
}
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head><title>浏览历史记录</title></head>");
out.println("<body>");
out.println("<h1>浏览历史记录</h1>");
out.println("<ul>");
for (String h : history) {
out.println("<li>" + h + "</li>");
}
out.println("</ul>");
out.println("</body>");
out.println("</html>");
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
```
这个Servlet会在每次HTTP请求时获取Referer头信息,并将它添加到一个列表中。当用户访问这个Servlet时,它会将浏览历史记录输出到页面中。通过这种方式,我们就可以实现浏览记录功能了。