springaopaction中验证用户登录状态的实例代码-创新互联

最近在学习ssh框架时,照着网上做了一个商城系统,之前在一些需要用户存在的操作中,都是在每一个action中写重复的代码,这样做现在想起来并不好,想起了spring的aop,于是想通过aop来给每个需要用户操作的Action验证用户登录状态。

创新互联是一家专注于网站设计制作、成都网站制作与策划设计,乌拉特前网站建设哪家好?创新互联做网站,专注于网站建设十多年,网设计领域的专业建站公司;建站业务涵盖:乌拉特前等地区。乌拉特前做网站价格咨询:18980820575

想法是这样的:


1. 用户登录时把userId放入session中


2. 通过spring 写一个advice来获取session中的userId,判断用户登录状态,如果userId不符合,则抛出自定义异常


3. 通过struts中配置来捕获异常,跳转界面

以下是代码: 


advice代码:

public class IsUserLoginAdvice{

  public void isUserLogin() throws UserNotFoundException{
    // TODO Auto-generated method stub
    int id=0;
    Map sessionMap=ActionContext.getContext().getSession();
    System.out.println(sessionMap);
    try {
      //这里在一开始时userId是不存在的可能会抛出NullPointException,catch起来
      id=(int) sessionMap.get("userId");
      //在用户注销时我把session中的userId设为0
      if(id==0){
        throw new UserNotFoundException();
      }
    } catch (Exception e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
      throw new UserNotFoundException();
    }
  }
}

网站栏目:springaopaction中验证用户登录状态的实例代码-创新互联
网址分享:https://www.cdcxhl.com/article22/dhpscc.html

成都网站建设公司_创新互联,为您提供商城网站App设计建站公司动态网站做网站企业建站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

营销型网站建设