手机号+短信验证码登录注意

首先我们 说下成员变量和局部变量 

简单介绍下

 

成员变量 :定义在class里面  方法外边

局部变量: 定义在方法里面

如果一个变量是成员变量,那么多个线程对同一个对象的成员变量进行操作时,它们对该成员变量是彼此影响的,也就是说一个线程对成员变量的改变会影响到另一个线程。
如果一个变量是局部变量,那么每个线程都会有一个该局部变量的拷贝(即便是同一个对象中的方法的局部变量,也会对每一个线程有一个拷贝),一个线程对该局部变量的改变不会影响到其他线程

 

如果你定义了两个成员变量分别来存储手机号和验证码 

如果不是多个人同时登陆 这样是没影响的 

但是当多个人同时登陆的时候 一个线程对成员变量的改变会影响到另一个线程 就会出现手机号与验证码匹配不一致的情况

这样会出现隐患 所以我建议 手机号和验证码 都存到数据库中 或者map中或者session中 或者redis缓存中 切记!切记!!切记!!!

不懂的朋友可以看看JVM

 

posted @ 2018-10-11 15:26  sysogg  阅读(1879)  评论(0编辑  收藏  举报