如何在监听器中发送退出请求

DeJuion 2016-02-18 04:37:33
我在做一个统计在线人数的功能,设计User表的时候有一个use_status字段,点击登录与退出按钮,可以正常修改该字段的值为1和0。
但是,如果直接关闭浏览器,无法发送请求,故写了一个监听器监听session的销毁,现在,能够监听到session的销毁,但是,在监听器中如何把这一请求传到控制器中,让控制器调用退出的方法呢?
下面是我写的监听器:


表述得不很清楚,希望有耐心的给我看一看,不胜感激
我用的框架是ssm
...全文
265 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
DeJuion 2016-02-22
  • 打赏
  • 举报
回复
引用 4 楼 funny_n_lucky 的回复:
实在不行就用Context传过去,我认为用数据库保存登录状态没什么意义
用数据库保存登录状态的确不好,兄台所言极是
DeJuion 2016-02-22
  • 打赏
  • 举报
回复
我的问题已经解决了。 可能我的问法有点不恰当,我的问题是:我不能在监听器中new 一个Service,用Service控制数据库。 正确的表述是:如何在非Spring组件中引用Spring的组件。 关于该问题网上已经有很多答案了。 通过: ApplicationContext ac = new FileSystemXmlApplicationContext("applicationContext.xml"); ac.getBean("beanId"); 可以实现。
DeJuion 2016-02-22
  • 打赏
  • 举报
回复
引用 5 楼 vswen5 的回复:
你在销毁session中 写你操作数据库的代码 不就是了麻。是不是想多了
这样当然可以,但是不符合mvc架构了
等待或是别的 2016-02-19
  • 打赏
  • 举报
回复
实在不行就用Context传过去,我认为用数据库保存登录状态没什么意义
wgw848183181 2016-02-19
  • 打赏
  • 举报
回复
用httpclient发送一个请求,我认为最好是不请求控制器,直接调用service层处理离线的方法
DeJuion 2016-02-19
  • 打赏
  • 举报
回复
我知道可以移除session,但是我要做的是先把该USER的状态改成离线啊,要操作数据库
vswen5 2016-02-19
  • 打赏
  • 举报
回复
你在销毁session中 写你操作数据库的代码 不就是了麻。是不是想多了
  • 打赏
  • 举报
回复
session.removeAttribute("currentUser"); 移除掉不就行了么?

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧