JavaWeb---Cookie---浏览图片---显示最近浏览图片
2016-09-09 12:39
465 查看
改程序实现的功能有:浏览服务器中的图片、点击看大图并记录、显示最近浏览的三张图片并且同一张图片连续浏览多次的不重复显示
如下:
servlet的入口在图片点击的超链接处,点击后进入servlet中查看大图并进行最近浏览的处理并保存到cookie中
这个程序很简单,里面的技术看上去很粗糙,图片的浏览也用了比较暴力的方式逐个访问的,如果图片较多那就显得太笨拙了,后面我还会讲,就不会用这个笨拙的方法了,还有就是在jsp中使用<%%>写java代码这种在以后是很少使用的,但是这个程序还是有值得学习的地方的
index.jsp
show.jsp
ShowServlet.java
如下:
servlet的入口在图片点击的超链接处,点击后进入servlet中查看大图并进行最近浏览的处理并保存到cookie中
这个程序很简单,里面的技术看上去很粗糙,图片的浏览也用了比较暴力的方式逐个访问的,如果图片较多那就显得太笨拙了,后面我还会讲,就不会用这个笨拙的方法了,还有就是在jsp中使用<%%>写java代码这种在以后是很少使用的,但是这个程序还是有值得学习的地方的
index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> </head> <body> <a href="jsps/show.jsp">看风景--利用Cookie技术显示用户最近浏览的若干个图片</a><br/> </body> </html>
show.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <style type="text/css"> img{ border:0; width:100; height:90; } .img{ border:0; width:50; height:45; } </style> </head> <body> <h1>看风景--利用Cookie技术显示用户最近浏览的若干个图片</h1> <a href="show.jsp">看风景--利用Cookie技术显示用户最近浏览的若干个图片</a><br/> <h3>最近浏览的图片</h3> <% String str=null; Cookie cs[]=request.getCookies(); if (cs!=null){ for (Cookie c:cs){ if (c.getName().equals("recentImages")){ str=c.getValue(); break; } } } if (str!=null){ String strs[]=str.split(","); for (String s:strs){ %> <img class="img" src="<%=request.getContextPath()%>/imgs/<%=s %>"> <% } } %> <hr/> <a href="<%=request.getContextPath()%>/showServlet?img=1.jpg"> <img src="<%=request.getContextPath()%>/imgs/1.jpg" /> </a> <a href="<%=request.getContextPath()%>/showServlet?img=2.jpg"> <img src="<%=request.getContextPath()%>/imgs/2.jpg" /> </a> <a href="<%=request.getContextPath()%>/showServlet?img=3.jpg"> <img src="<%=request.getContextPath()%>/imgs/3.jpg" /> </a> <a href="<%=request.getContextPath()%>/showServlet?img=4.jpg"> <img src="<%=request.getContextPath()%>/imgs/4.jpg" /> </a> <a href="<%=request.getContextPath()%>/showServlet?img=5.jpg"> <img src="<%=request.getContextPath()%>/imgs/5.jpg" /> </a> <a href="<%=request.getContextPath()%>/showServlet?img=6.jpg"> <img src="<%=request.getContextPath()%>/imgs/6.jpg" /> </a> <a href="<%=request.getContextPath()%>/showServlet?img=7.jpg"> <img src="<%=request.getContextPath()%>/imgs/7.jpg" /> </a> <a href="<%=request.getContextPath()%>/showServlet?img=8.jpg"> <img src="<%=request.getContextPath()%>/imgs/8.jpg" /> </a> </body> </html>
ShowServlet.java
package cn.hncu.servlets; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class ShowServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=utf-8"); PrintWriter out = response.getWriter(); out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">"); out.println("<HTML>"); out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>"); out.println(" <BODY>"); String img=request.getParameter("img"); String htmlStr="<img src='"+request.getContextPath()+"/imgs/"+img+"'/>"; out.print(htmlStr); //用Cookie记录用户访问过的图片信息 Cookie cs[]=request.getCookies(); boolean boo=false; if (cs!=null){ for (Cookie cookie:cs){ if (cookie.getName().equals("recentImages")){ String imgs=cookie.getValue(); if (!imgs.substring(0, imgs.indexOf(",")).equals(img)){ imgs=img+","+imgs; } if (imgs.split(",").length>3){ imgs=imgs.substring(0, imgs.lastIndexOf(",")); } cookie.setValue(imgs); cookie.setMaxAge(60*60*24); cookie.setPath("/"); response.addCookie(cookie); boo=true; break; } } } if (boo==false){//首次访问(浏览器中没有图片浏览的cookie) Cookie c=new Cookie("recentImages", img); c.setMaxAge(60*60*24); c.setPath("/"); response.addCookie(c); } out.println(" </BODY>"); out.println("</HTML>"); out.flush(); out.close(); } }
相关文章推荐
- Web---Cookie技术(显示用户上次登录的时间、显示用户最近浏览的若干个图片(按比例缩放))
- Web---Cookie技术(显示用户上次登录的时间、显示用户最近浏览的若干个图片(按比例缩放))
- javaWeb_04-Cookie案例-显示商品浏览历史纪录
- javaWeb_04-Cookie案例-显示商品浏览历史纪录
- javaweb之Cookie显示商品的浏览记录和Cookie的常见应用有哪些
- javaWeb 使用cookie显示商品浏览记录
- [置顶] 【Javaweb】Cookie应用——显示用户上次访问网站的时间
- JAVA WEB开发中显示图片的问题
- java(16)--利用cookie显示商品浏览历史
- javaweb网页上传图片并显示在页面上,并在服务端存到磁盘(base64编码解码)
- JAVASCRIPT+COOKIE 显示最近浏览文章
- javaWeb-02-cookie案例-显示用户上次访问网站的时间
- 【JavaWeb-7】Cookie记住用户名、历史浏览记录与Session的自动系列化、购物车案例、验证码使用
- 利用Cookie显示最近浏览的商品
- JAVASCRIPT+COOKIE 显示最近浏览文章
- javaWEB总结(19):利用Cookie显示最近浏览的商品
- servlet之利用Cookie显示最近浏览的商品
- java web 项目图片显示
- Java Webservice 取数据库图片,图片以数组方式传递到Delphi前台显示
- [原创]java WEB学习笔记30:Cookie Demo 之显示最近浏览的记录