积累,创造,分享!
BlogJava
首页
新随笔
联系
聚合
管理
25 Posts :: 13 Stories :: 26 Comments :: 0 Trackbacks
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(5)
给我留言
查看公开留言
查看私人留言
随笔档案
(25)
2009年4月 (1)
2008年3月 (2)
2007年7月 (1)
2007年2月 (1)
2006年7月 (1)
2006年2月 (1)
2005年11月 (4)
2005年10月 (2)
2005年9月 (3)
2005年8月 (9)
文章分类
(13)
分析与设计(5)
开发心得(1)
程序人生(3)
编程基础(4)
文章档案
(13)
2005年10月 (1)
2005年8月 (12)
相册
瞬间记忆
其他站点
搜去吧
快速找到企业
聊天图
聊天图(www.liaotiantu.com)收集了海量聊天图片,有各种热门搞笑动图,gif图片,囧图。在这儿可以找到任何你需要的各种分类的在线制作表情包和热门表情。操作简单易懂,只要你会打字,就可以在海量图片上制作最萌最屌最贱的的搞笑表情,囧图说事栏目每日更新,为您带来开心每一天
友情链接
Davy的Java世界
搜索
积分与排名
积分 - 25943
排名 - 1496
最新评论
1. re: 警惕手工加载spring配置文件导致数据库session无法释放
评论内容较长,点击标题查看
--plusir
2. re: 谈谈如何通过网站域名访问weblogic中的应用。(原创)
你上面讲的weblogic是哪个版本的,你说的设置虚拟主机我也设了,可就是不能访问,还需要改哪些东西
--suxh
3. re: 警惕手工加载spring配置文件导致数据库session无法释放
评论内容较长,点击标题查看
--空白
4. re: 警惕手工加载spring配置文件导致数据库session无法释放[未登录]
为什么每次都要加载一次配置文件?
--gavin
5. re: 谈谈如何通过网站域名访问weblogic中的应用。(原创)
我也准备配置通过域名访问weblogic服务,我使用的是9.2的版本,但是我在导航栏里面没有找到VirtualHosts,应该怎么办呢?
--ly
阅读排行榜
1. 警惕手工加载spring配置文件导致数据库session无法释放(2717)
2. 谁让事务控制不起作用了?(2069)
3. 领域模型,你说的是哪一个?(1640)
4. 离黎明还有多久?(1286)
5. 关于spring整合Quartz的一点说明(1069)
评论排行榜
1. 离黎明还有多久?(6)
2. 警惕手工加载spring配置文件导致数据库session无法释放(3)
3. 谁让事务控制不起作用了?(3)
4. 不算总结的总结(2)
5. 由Petstore想到JNDI的一种用法(2)
同步器令牌防止用户重复提交
用同步器令牌来防止客户端的重复提交,这的确是个好注意!
特别是防止用户在浏览器当中点击后退或者刷新按钮所产生的不良影响。
道理其实很简单,大概流程为:输入请求-->比较值-->处理请求-->生成令牌-->保存令牌-->
准备响应-->外发响应。
在客户请求当中携带服务器前一次响应时发给客户端的令牌,去与服务器端保存的令牌相比较,如果相等,则说明当前是合法提交。而不过不匹配,则可能是重复提交了。
在具体的实现当中以jsp为例,在控制器当中采用servlet来负责管理令牌,将服务器端的令牌保存在session当中,通过每次的请求来更新这个令牌。然后在将要处理的业务逻辑之前判断提交上来的令牌是否合法。如果合法则继续执行,如果不合法,则避免执行正常的操作。
servlet当中生成token代码可如下:
public
void
saveToken(HttpServletRequest request)
{
HttpSession session
=
request.getSession();
String token
=
generateToken(request);
session.setAttribute(Constants.TOKEN,token);
}
检查令牌合法性
public
boolean
isTokenValid(HttpServletRequest request)
{
HttpSession session
=
request.getSession();
String saved
=
session.getAttribute(Constants.TOKEN);
String token
=
request.getParameter(Constants.TOKEN);
if
(saved.equals(token))
{
return
true
;
}
return
false
;
}
在JSP端,通过助手类将当前生成的令牌保存在HTML的表单的隐含域当中。
比如
<
input
type
="hidden"
name
="TOKEN"
value
="as8d7j3sk"
>
通过这种手段实现起来并不十分复杂。当然这只是防止用户提交的手段之一。其他的方法有待大家不断补充。
来源参考:Core J2ee patterns 2
posted on 2005-11-15 11:14
nighthawk
阅读(962)
评论(0)
编辑
收藏
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
Chat2DB
C++博客
博问
管理
Powered by:
BlogJava
Copyright © nighthawk