1.放入request域中 用户在首先登录浏览器获取资源,这时浏览器会向服务器发送一次请求***request1***,服务器的响应浏览器,浏览器页面加载完成,在这个过程中,验证码已经加载完毕,那验证码既然已经加载完毕,验证码也必然向某个servlet发送了请求***request2***才会加载完毕,这中间发生了两次请求,这两次请求并不是同一次,而request域的作用范围只在一次请求中,所以验证码信息不能放在request中。如果你觉得验证码的信息可以放入 request2 中,那么谁来调用这个request2中的信息呢?及时request2中有验证码的信息我们还是无法得到。
2.放入session中 【验证码必须放在session中的原因】放在session中,session的作用域在一次会话中,用户开一个浏览器访问一个网站,只要不关闭该浏览器,不管该用户点击多少个超链接,访问多少资源,直到用户关闭浏览器,或者服务器关闭,这整个过程我们称作一次会话。那及时在不同的请求中,我们都可以得到验证码的信息。得到验证码的信息我们就可以判断用户输入的是否正确
推荐阅读
- Java|Java基础——数组
- 人工智能|干货!人体姿态估计与运动预测
- java简介|Java是什么(Java能用来干什么?)
- Java|规范的打印日志
- Linux|109 个实用 shell 脚本
- 程序员|【高级Java架构师系统学习】毕业一年萌新的Java大厂面经,最新整理
- Spring注解驱动第十讲--@Autowired使用
- SqlServer|sql server的UPDLOCK、HOLDLOCK试验
- jvm|【JVM】JVM08(java内存模型解析[JMM])
- 技术|为参加2021年蓝桥杯Java软件开发大学B组细心整理常见基础知识、搜索和常用算法解析例题(持续更新...)