JAVA中servlet页面怎样刷新session,使JSP页面得到即使更新????
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA中servlet页面怎样刷新session,使JSP页面得到即使更新????相关的知识,希望对你有一定的参考价值。
参考技术A 为什么要把不固定的东西放到session?要么就是所有涉及到session数据改变的操作都去将session时时更新。
要么就不要将数据存放到session中,每次都去数据库什么的地方获取最新数据。追问
不放在session里面JSP页面怎么显示啊
追答首先,你session中的东西为什么会变?具体什么操作会涉及到他会变?
我说了两个解决办法,看你这么执意的要用session,那么就使用我说的第一个方法呗。
但是还是不能更新session里面的值呀
参考技术B实现服务器和客户端异步数据一致的方法有两种通信方式:
客户端定时请求服务器端的服务,B/S框架下使用html页面用js定时轮询(ajax方式后台请求),请求某个URI,访问servlet实现查询所需要的信息。(刷新session是什么意思?)
服务器端主动推送消息(Push技术,06年开始技术趋于成熟),客户端现请求服务器端建立一个连接,然后服务器端不回执通信结束符,使这个连接保持(comet长连接模型),用长连接的方式可以实现服务器对web客户端的消息推送,客户端的实现用js实现,服务器端有pushlet框架或最新的websocket框架。
具体怎么晕啊
追答具体实现不是一两句话能够说完的,你可以根据关键字百度一下。
参考技术C 只能通过后台定时任务或者前台js定时发送请求追问具体怎么做呀
追答比如前台js每5秒钟发送一次请求到后台,后台再发送数据回前台。不过这样缺点很大,会影响性能。一般web页面都不要求及时刷新,只要求用户点击后刷新信息
Servlet/JSP-07 Session应用:避免表单重复提交
Session应用:避免表单重复提交
一. 表单的重复提交
1. 重复提交的情况
①在表单提交到一个 Servlet,而 Servlet 又通过请求转发的方式响应了一个 JSP 或者 HTML 页面,此时浏览器地址栏还保留着 Servlet 路径,在此响应页面点击”刷新“按钮
② 在响应页面尚未到达时,重复点击表单的”提交“按钮
③ 点击”返回“按钮或者浏览器的回退按钮,再点击”提交“按钮
2.如何避免表单重复提交?
原理:在表单中做一个标记,当表单提交到Servlet时,检查标记是否存在且是否和预定义的一致,若一致则受理请求,若不一致或没有标记,则提示重复提交。
方法:
① 仅提供一个隐藏域,<input type="hidden" name="token" value="tomas" /> 无法实现:没有办法清除请求参数
② 把标记放在 request 中。无法实现:因为当表单页面显示后(包括刷新),本次JSP页面对应request已被销毁,在提交的时候已经是一个新的request
③ 把标记放在 session 中。可以实现,步骤如下:
1> 在原表单页面,生成一个随机值(时间戳)token
2> 在原表单页面, 将 token 值放入 session 中
3> 在原表单页面, 将 token 值放入隐藏域中
1>> 在表单提交的目标 Servlet 中,获取 session 和隐藏域中的 token 值
2>> 比较两个值是否一致:若一致则受理请求,且把session 中的 token 值清除
3>> 若不一致,则直接响应提示:重复提交。
以上是关于JAVA中servlet页面怎样刷新session,使JSP页面得到即使更新????的主要内容,如果未能解决你的问题,请参考以下文章
asp中session超时怎样写,超时后怎样跳转到指定页面?