String selectId=request.getParameter(\ //获取用户选择 if(selectId==null||selectId.equals(\ //没有选择投票选项 mess=\请选择投票!\ else{ //选择了投票选项 boolean mark=false; //是否允许投票的标志 long today=(new Date()).getTime();
//new Date()获取当前时间,通过调用Date类的getTime()方法获取从1970年1月1日00:00:00起到当前时间的毫秒数 long last=0; //上次投票的时间(以毫秒显示) String ip=request.getRemoteAddr(); //获取用户IP地址 String sql=\
MAX(voteMSEL) FROM tb_temp WHERE voteIp='\//SQL语句,功能:从数据表中获取当前用户上次投票时的记录 TempSingle single=myDb.selectTemp(sql); if(single==null) //在tb_temp表中不存在当前IP mark=true; //允许投票 else{//存在当前IP,则判断从上次投票到现在是否超过指定时间,本系统指定为60分钟 last=single.getVoteMSEL();//从该JavaBean中获取上次投票的时间(以毫秒显示) String result=MyTools.compareTime(today,last); //将现在时间与上次投票时的时间进行比较 if(result.equals(\ //返回\,表示时间差已超过60分钟,允许投票 mark=true; else //否则,不允许投票 mark=false; } String strTime=MyTools.formatDate(today); //将当前投票时间(以毫秒显示的)转为\年-月-日 时:分:秒\的形式 if(mark){ //允许投票 /** 【1】记录用户IP和投票时间 **/ sql=\ int i=myDb.update(sql); /** 【2】判断记录用户IP是否成功 **/ if(i<=0) //记录IP失败 mess=\系统在记录您的IP地址时出错!\ else{ //记录IP成功 /** 更新票数 **/ sql=\ i=myDb.update(sql); //更新成功 if(i>0) mess=\投票生效!
\ else //更新失败 mess=\投票失败!\ } } else{ //不允许投票 mess=\对不起,通过判断您的IP,您已经投过票了!
上次投票时间:\分钟之内不允许再进行投票!\ } }
session.setAttribute(\ //保存提示信息到session范围内 response.sendRedirect(\ //将请求重定向到messages.jsp页面,进行提示 %>
7)查看结果的设计
先编写获取投票选项代码:<%@ page contentType=\<%@ page import=\
<%@ page import=\
<%@ page import=\ 11 <% float numAll=0;//存储总票数 String sql=\生成查询投票选项的SQL语句 List showlist=new ArrayList(); showlist=myDb.selectVote(sql);//查询数据表获取所有投票选项 if(showlist==null) System.out.println(\ else System.out.println(\%> 8)显示投票结果代码
<% if(showlist==null||showlist.size()==0){ %>
<% } else{ int i=0; while(i
<%=single.getTitle() %>
<%
i++; }//while结束 } //else结束 %>
<% if(showlist==null||showlist.equals(\
12
<% } else{ int i=0; while(i
\
i++; }//while结束 } //else结束 %>
十二、参考文献
[1]夏士兵,钱江.构建基于COM+的分布式Web应用[J].微型机与应用,2001(6):8-9.
[2][美]Richard Anderson, Chris Blexrud著,刘福太,张立民,金慧琴,梁发麦等译.ASP3高级编程[M].北京:机械工业出版社,2000.408-458.
[3]耿祥义,张跃平.《JSP实用教程》. 清华大学出版社,2003年5月1日:1-354. [4]BruceEckel.《JSP编程思想》. 机械工业出版社,2003年10月:1-378. [5]FLANAGAN.《JSP技术手册》. 中国电力出版社,2002年6月:1-465. [6]孙一林,彭波.《JSP数据库编程实例》. 清华大学出版社,2002年8月:30-210. [7]LEE ANNE PHILLIPS.《巧学活用HTML4》.电子工业出版社,2004年8月:1-319.
13
[8]飞思科技产品研发中心.《JSP应用开发详解》.电子工业出版社,2003年9月:32-300.
14