java如何做到让用户下线?java应用领域有哪些?

在论坛、社区类型的项目中,当出现了违规用户时我们需要将其账号立即封禁,让用户下线,那用java要怎么实现这个功能呢?下面来我们就来给大家讲解一下java让用户下线的方法。

第一步:自建一个继承自HttpSessionListener的 监听器

package com.zhph.util;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
/**
* session 监听事件
* @author HAXF010
*
*/
public class SessionHelper implements HttpSessionListener
{
    /* Session创建事件 */
    public void sessionCreated(HttpSessionEvent event)
    {}
    /* Session失效事件 */
    public void sessionDestroyed(HttpSessionEvent event)
    {
        SessionLockHelper.moveSession(event.getSession());
    }
}

第二步:在web.xml中配置第一步创建的监听类 ; SessionHelper 是自己的监听类

<listener >
    <listener-class>com.zhph.util.SessionHelper</listener-class> <
    /listener>

第三步:创建工具类 SessionLockHelper.java

package com.zhph.util;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.http.HttpSession;
import com.zhph.vo.LoginUser;
public class SessionLockHelper
{
    public static Mapmap = new HashMap();
    //添加session到集合;用户的id 作为 session 的 key
    public static void putSession(HttpSession session)
    {
        LoginUser user = (LoginUser) session.getAttribute("user");
        map.put(user.getId(), session);
    }
    public static void moveSession(HttpSession session)
    {
        LoginUser user = (LoginUser) session.getAttribute("user");
        map.remove(user.getId());
    }
    //让对应用户的会话失效
    public static void destroyedSession(LoginUser user)
    {
        System.out.println("会话失效了。");
        HttpSession session = map.get(user.getId());
        session.invalidate();
    }
}

第四步:当用户登录成功时调用 SessionLockHelper.putSession(HttpSession session)方法。

第五步:对于要强制注销的用户调用SessionLockHelper.destroyedSession(LoginUser user)方法。

第六步:用户所有的请求的拦截器判断获取到当前用户的Session 都获取不到了,然后代码跳转到登录页面;

java应用领域有哪些?

1. 大型网站,主要使用JAVA EE,最有名例子就是电子商务交易平台阿里巴巴,淘宝,京东。

2. 大型企业级应用,主要使用JAVA EE,比如大型企业管理系统,CRM系统,ERP系统2.1有关通信及网络的大型企业:移动、联通、电信、网通主要的信息化都是JAVA2.2有关金融行的大型企业,所有的银行、证券公司,互联网金融; 2.3大型管理系统,如:供应链,客户管理系统,物流系统等;

3.电子政务,主要使用JAVA EE,相关的政府部门绝大多数的信息化系统是JAVA开发的;

4.游戏,很多手机游戏都是用JAVA开发的。包括大型网游的后台数据统计都是java。

5. 嵌入式设备及消费类电子产品,主要用 JAVA ME,无线手持设备、通信终端、医疗设备、信息家电(如数字电视、机顶盒、电冰箱)、汽车电子设备等是比较热门的Java应用领域,这方面的应用例子有中国联通CDMA 1X网络中基于Java技术的无线。

除了以上,java还可以应用于游戏、大数据中等,总之java的应用领域还是很广的,另外,java让用户下线可以参考以上的方法,简单的说,就是让Session失效。最后大家如果想要了解更多java实例知识,敬请关注奇Q工具网。

推荐阅读:

geojson怎么快速获取xy?GeoJSON 是什么格式?

ReentrantLock与synchronized的区别有哪些?有相似点吗?

jcreator怎么配置jdk?jcreator配置jdk教程