博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
day25(令牌机制)
阅读量:5810 次
发布时间:2019-06-18

本文共 1086 字,大约阅读时间需要 3 分钟。

令牌机制

    作用:处理页面重复提交,造成数据多次写入数据库。

    使用方法:

        类似于验证码机制,使用session记录一个不可能重复的值(Uuid)在访问controller时对session进行校验。

        

               //获取session存储的值                 String sessionToken = request.getSession().getAttribute("token").toString();           //获取隐藏域中提交的数据		String ptToken = request.getParameter("token");           //非空校验和相等判断		if (null==sessionToken||null==ptToken||!ptToken.equals(sessionToken)) {
               //令牌不相符,则直接进行转发,不需要进行对数据库提交数据 request.getRequestDispatcher("ProductFindAllServlet").forward(request, response); return ; }

  在提交的jsp页面中必须将token值放入session中

   
<% request.getSession().setAttribute("token", UuidUtils.getUuid()) ;%>

  UuidUtils类

import java.util.UUID;public class UuidUtils {	public static String getUuid(){		String uuid = UUID.randomUUID().toString();		return uuid;	}}

    注意事项:

      1.在jsp页面中需要提交session中的值

       位置:form表单中 写一个隐藏表单  用来提交session中的值

      2.异常处理(NullPointerException)

        解决方式:对于有可能产生的非空字段进行判断。

if(null==sessionToken||null==ptToken){}

  

        

          

转载于:https://www.cnblogs.com/fjkgrbk/p/token.html

你可能感兴趣的文章
java springcloud版b2b2c社交电商spring cloud分布式微服务(十五)Springboot整合RabbitMQ...
查看>>
10g手动创建数据库
查看>>
Windwos Server 2008 R2 DHCP服务
查看>>
UVa 11292 勇者斗恶龙(The Dragon of Loowater)
查看>>
白话算法(7) 生成全排列的几种思路(二) 康托展开
查看>>
d3 v4实现饼状图,折线标注
查看>>
微软的云策略
查看>>
Valid Parentheses
查看>>
【ES6】数值的扩展
查看>>
性能测试之稳定性测试
查看>>
ES6的 Iterator 遍历器
查看>>
2019届高二(下)半期考试题(文科)
查看>>
【REDO】删除REDO LOG重做日志组后需要手工删除对应的日志文件(转)
查看>>
nginx 301跳转到带www域名方法rewrite(转)
查看>>
AIX 配置vncserver
查看>>
windows下Python 3.x图形图像处理库PIL的安装
查看>>
【IL】IL生成exe的方法
查看>>
network
查看>>
SettingsNotePad++
查看>>
centos7安装cacti-1.0
查看>>