Java web之统计站点被访问的次数
2016-04-30 22:41
381 查看
Servlet不仅能动态生成HTML文档,还能动态生成图像。
使用Servlet的ImageServlet类就可以实现。来演示动态生成图像的功能。在web.xml文件中为ImageServlet映射的URL为“\counter”。通过浏览器多次访问“HTTP://localhost:8080/helloapp/counter”
ImageServlet实际上是返回了一个图像。
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.awt.*;
import java.awt.image.*;
import comsun.image.codec.jepg.*;
public class Countservlet extends HttpServlet{
public void doget(HttpServletRequest request,HttpServletReponse response)throws ServletException,IOException{
ServletContext context=getServletContext();
//从ServletContext中读取counter属性
Counter counter=(Counter)context.getAttribute("counter");
//如果ServletContext中没有counter属性,就创建counter属性
if(counter==null){
counter=new Counter(1);
context.setAttribute("counter",counter);
}
reponse.setContextType("text/html;charset=GB2312");
PrintWriter out=response.getWriter();
out.println("<html><head><title>CounterServlet</title>></head>");
out.println("<body>");
//输出当前counter属性
String imageLink="<img src='image?count="+counter.getCount()+"'/>";
out.println("小主,您是第"+imageLink+"位访问者!");
out.println("</body></html>");
//将计数器递增1
Counter.add(1);
out.close();
}
}
使用Servlet的ImageServlet类就可以实现。来演示动态生成图像的功能。在web.xml文件中为ImageServlet映射的URL为“\counter”。通过浏览器多次访问“HTTP://localhost:8080/helloapp/counter”
ImageServlet实际上是返回了一个图像。
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.awt.*;
import java.awt.image.*;
import comsun.image.codec.jepg.*;
public class Countservlet extends HttpServlet{
public void doget(HttpServletRequest request,HttpServletReponse response)throws ServletException,IOException{
ServletContext context=getServletContext();
//从ServletContext中读取counter属性
Counter counter=(Counter)context.getAttribute("counter");
//如果ServletContext中没有counter属性,就创建counter属性
if(counter==null){
counter=new Counter(1);
context.setAttribute("counter",counter);
}
reponse.setContextType("text/html;charset=GB2312");
PrintWriter out=response.getWriter();
out.println("<html><head><title>CounterServlet</title>></head>");
out.println("<body>");
//输出当前counter属性
String imageLink="<img src='image?count="+counter.getCount()+"'/>";
out.println("小主,您是第"+imageLink+"位访问者!");
out.println("</body></html>");
//将计数器递增1
Counter.add(1);
out.close();
}
}
相关文章推荐
- 大量JAVA系列教学视频免费学习
- 求高精度幂(java)
- Java中的数学类
- Java 作业2 Java API
- Java对象死亡标记的过程
- 启动 Eclipse 弹出“Failed to load the JNI shared library jvm.dll”
- Java Swing中Substance个人比较喜欢的两种组合
- [转载]企业级应用架构(NHibernater+Spring.Net+MVC3)
- 【JAVA】java字符串拼接
- 初识spring mvc + mybatis
- JAVA为什么要配置环境变量,怎样配置
- 第91课:SparkStreaming基于Kafka Direct案例实战和内幕源码解密 java.lang.ClassNotFoundException 踩坑解决问题详细内幕版本
- Java多线程通信方式
- java消息机制 ActiveMQ入门实例
- 【Struts】:Interceptors(拦截器)
- java中输入流和输出流
- java class Loader
- java回调 -- 别再让我犯糊涂
- 20145325张梓靖 《Java程序设计》第9周学习总结
- Java单元测试工具:JUnit4——JUnit测试套件使用及参数化设置