



免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
服务器端写程序防重复提交实现原理:当用户提交的时候,系统首先需要生成一个随机号,在服务器端进行保存并在jsp表单中绑定这个生成的随机号,当jsp表单提交时服务器端接收用户提交的这个随机号然后与服务器端保存的随机号进行对比,如果随即号相同的话,执行提交操作,并把服务器端保存的随机号销毁。如果不同的话提示用户重复提交。示例:生成随机数view plain1. packagecn.itcast.form; 2. 3. importjava.io.IOException; 4. importjava.security.MessageDigest; 5. importjava.security.NoSuchAlgorithmException; 6. importjava.util.Random; 7. importjava.util.UUID; 8. 9. importjavax.servlet.ServletException; 10. importjavax.servlet.http.HttpServlet; 11. importjavax.servlet.http.HttpServletRequest; 12. importjavax.servlet.http.HttpServletResponse; 13. 14. importsun.misc.BASE64Encoder; 15. 16. publicclassFormServletextendsHttpServlet 17. 18. publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse) 19. throwsServletException,IOException 20. 21. Stringtoken=TokenProcessor.getInstance().getToken(); 22. request.getSession().setAttribute(token,token); 23. request.getRequestDispatcher(/form.jsp).forward(request,response); 24. 25. 26. publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) 27. throwsServletException,IOException 28. 29. doGet(request,response); 30. 31. 32. 33. /令牌(随机数生成器) 34. classTokenProcessor 35. 36. /* 37. *1.把构造方法私有 38. *2.自己创建一个对象 39. *3.定义一个方法,让别人获取这个对象 40. * 41. */ 42. 43. privateTokenProcessor() 44. privatestaticfinalTokenProcessorinstance=newTokenProcessor(); 45. publicstaticTokenProcessorgetInstance() 46. returninstance; 47. 48. 49. publicStringgetToken() 50. 51. Stringtoken=System.currentTimeMillis()+newRandom().nextInt(1000000)+; 52. 53. /md5数据指纹消息摘要 54. try 55. MessageDigestdigest=MessageDigest.getInstance(md5); 56. bytemd5=digest.digest(token.getBytes();/任意的16个字节3434 57. 58. /Base64编码 59. /BASE64Encoderencoder=newBASE64Encoder(); 60. /returnencoder.encode(md5); 61. 62. returntoHex(md5); 63. catch(NoSuchAlgorithmExceptione) 64. thrownewRuntimeException(e); 65. 66. /returnUUID.randomUUID().toString(); 67. 68. 69. publicStringtoHex(byteb) 70. StringBuffersb=newStringBuffer(); 71. 72. for(inti=0;i4&15,16); 75. 76. 77. returnsb.toString(); 78. 79. 服务器端验证:view plain1. packagecn.itcast.form; 2. 3. importjava.io.IOException; 4. importjavax.servlet.ServletException; 5. importjavax.servlet.http.HttpServlet; 6. importjavax.servlet.http.HttpServletRequest; 7. importjavax.servlet.http.HttpServletResponse; 8. 9. publicclassRegisterServletextendsHttpServlet 10. 11. publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse) 12. throwsServletException,IOException 13. /防表单重复提交 14. booleanb=isValid(request); 15. if(!b) 16. System.out.println(表单是重复提交!); 17. return; 18. 19. request.getSession().removeAttribute(token); 20. 21. Stringusername=request.getParameter(username); 22. 23. try 24. Thread.sleep(1000*5); 25. catch(InterruptedExceptione) 26. /TODOAuto-generatedcatchblock 27. e.printStackTrace(); 28. 29. System.out.println(向数据库注册用户); 30. System.out.println(注册成功!); 31. 32. /校验客户机带过来随即号否有效 33. privatebooleanisValid(HttpServletRequestrequest) 34. 35. Stringc_token=request.getParameter(token); 36. if(c_token=null|c_token.equals() 37. returnfalse; 38. 39. 40. Strings_token=(String)request.getSession().getAttribute(token); 41. if(s_token=null) 42. returnfalse; 43. 44. 45. if(!c_token.equals(s_token) 46. returnfalse; 47. 48. 49. return
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年安全评价师(高级)职业技能鉴定案例分析解析册
- 2025年消防执业资格考试题库:消防应急救援战例分析实战演练试卷
- 2025年美术教师编制考试模拟试卷:美术教育心理学研究与应用试题
- 2025年CPE考试试卷:写作思路引导与2025年考试热点话题分析
- 语文课上难忘的一件事周记(13篇)
- 2025年轻油蒸汽转化催化剂项目提案报告
- 2025年草除灵乙酯项目申请报告
- 2025年一建考试机电工程经济与造价管理实战案例分析试题卷
- 2025年物业管理师考试物业管理物业设施运行管理实施改进报告反思试卷
- 在阅读中发现美好阅读感悟作文8篇
- 辊压机培训ppt课件
- 全国医疗服务价格项目规范(试行)
- 译林小学英语5B教材分析
- 江苏省常州市2024届高一数学下学期期末质量调研试题(含解析)
- 新标准大学英语(第二版)综合教程2 Unit 1 A篇练习答案及课文翻译
- 冀教版英语小升初模拟试卷
- 食品用塑料包装容器工具等制品生产许可审查细则
- 物流供应商运作考评标准
- 格宾挡墙结构设计计算书
- 招标投标活动异议和投诉处理工作规范
- 八年级上册物理教案全册
评论
0/150
提交评论