//存储图片

upload。transferTo(file);

//回调函数,上传完即可在页面上显示图片。

response。setCharacterEncoding("utf-8"); 

String callback =request。getParameter("CKEditorFuncNum");   

out。println("<script type=\"text/javascript\">"); 

out。println("window。parent。CKEDITOR。tools。callFunction("+ callback + ",'" + file。getName()+ "','')");   

out。println("</script>"); 

得到的效果如下图2-5所示:

图2-5 ckeditor上传图片效果图

2。5。2  验证码插件kaptcha

我们先来说一下验证码出现的原因。数学家和计算机学家们为了解决机器很难分辨,而人类很容易分辨的东西,从而发现了验证码。验证码出现之后,也有很多用处。比如,黑客通过脚本语言就可以不断循环破解用户的密码,而有了验证码,用户的账户就安全了很多。本项目中也有很多地方会用到验证码。第一是用户注册的地方,为了防止用户恶意注册很多账户,因此用验证码控制一下。第二是发帖,防止用户恶意发帖,导致数据库存储太多垃圾信息。接下来介绍本项目使用的验证码插件kaptcha。

kaptcha 是谷歌开发的一个验证码插件。Kaptcha使用非常方便,只需要几步操作即可。同时,如果你对默认的验证码不满意,你可以对验证码的图片样式进行覆盖,既方便又灵活。Kaptcha会将生成的验证码字符串保存到session缓存中,然后在后台接收到用户输入的验证码,并把它与session中的验证码比较,就可以判断用户输入的是否正确了。

接下来我们来介绍一下kaptcha的使用方法。首先我们需要引入所需的jar包。然后在spring配置文件中配置kaptcha的bean组件,如下图2-6所示。当然我们需要在页面中加入图片标签用于显示验证码,<img src="#getRequestBase() /operator/login/kaptcha。htm " />。其中<img>标签的src属性为后台的路径,其作用是把图片画到指定的图片上。下面我们就需要在后台随机出一串字符串,然后把这串字符串加上样式画到前端的图片上。后台代码如下:

//清除缓存

response。setDateHeader("Expires", 0);

response。setHeader("Cache-Control","no-store, no-cache, must-revalidate");

response。addHeader("Cache-Control", "post-check=0, pre-check=0");

response。setHeader("Pragma", "no-cache");

// 设置返回类型为图片类型

response。setContentType("image/jpeg");

// 随机出一串字符串

String capText = captchaProducer。createText();

// 把字符串存在session中

HttpSession session = request。getSession();

session。setAttribute(Constants。KAPTCHA_SESSION_KEY, capText);

// 创建出相应的图片

BufferedImage bi = captchaProducer。createImage(capText);

ServletOutputStream out = response。getOutputStream();

// 把图片画到前端页面去

ImageIO。write(bi, "jpg", out);

图2-6 kaptcha的bean组件

2。5。3  报表工具HighCharts

Highcharts是一个非常简单、方便、实用的图表工具。HighCharts支持很多种图表,比如:折线图、柱状图、饼图等等。Highcharts使用javascript语言编写,调用起来非常方便,不用担心后台的语言,是现在很多公司生成报表的工具首选。

本项目会统计网站的信息,比如每个板块的发帖量,还有每个用户的浏览记录,由此来发展更新网站,从而给用户提供更好的体验。而直观的图表比简单的数字更容易分析出结果,本项目选用HighCharts作为展示数据的工具。

上一篇:jsp+mysql图书馆图书管理系统设计
下一篇:jsp+mysql精品课程管理系统设计

java+mysql通用试题库系统后台设计与实现

java+mysql宿舍管理系统的设计+ER图

java+mysql家庭财务管理系统设计

java+mysql银行ATM软件项目管理系统设计

java+mysql电瓶车进销存采购子系统的设计

java+mysql云平台的移动考试系统设计

java+mysql电脑彩票销售与管理系统设计

网络语言“XX体”研究

张洁小说《无字》中的女性意识

互联网教育”变革路径研究进展【7972字】

老年2型糖尿病患者运动疗...

LiMn1-xFexPO4正极材料合成及充放电性能研究

安康汉江网讯

ASP.net+sqlserver企业设备管理系统设计与开发

我国风险投资的发展现状问题及对策分析

新課改下小學语文洧效阅...

麦秸秆还田和沼液灌溉对...