中软实习day5-filter+批量删除+角色权限管理

1.创建fliter.LoginFiliter类,实现filiter过滤器,使其在未登录时界面不能随便跳转,只能锁定在登录界面
在这里插入图片描述

@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
    HttpServletRequest request = (HttpServletRequest) servletRequest;
    HttpServletResponse response = (HttpServletResponse) servletResponse;
    HttpSession session = request.getSession();
    User user = (User) session.getAttribute("user");
    String uri = request.getRequestURI();
    System.out.println("uri-------"+uri);
    System.out.println("uri.indexof="+uri.indexOf("login.do"));
    if (user==null && uri.indexOf("login.do")==-1){
        response.sendRedirect(request.getContextPath()+"../login.jsp");
    }else {
        filterChain.doFilter(request,response);
    }
}

@Override
public void destroy() { }

2.实现批量删除用户功能

<delete id="deleteAll" parameterType="List">
    delete from tb_user where id in
    <foreach collection="ids" item="id" open="(" close=")" separator=",">
        #{id}
    </foreach>
</delete>
@Override
public void deleteAll(List<Integer> ids) {
    System.out.println("service in"+ids);
    userDao.deleteAll(ids);
    System.out.println("service end");
}

3.创建Role实体类,定义相关属性
在这里插入图片描述
4.建立寻找角色和寻找角色ID的接口并实现

@Override
public List<Integer> findRoleId(int userId) {
    return roleDao.findRoleIdByUserId(userId);
}

@Override
public List<Role> findRoleByUserId(int id) {
    return roleDao.findRoleByUserId(id);
}
<select id="findRoleIdByUserId" parameterType="int" resultType="int">
    select roleId from user_role where userId=#{userId}
</select>

<select id="findRoleByUserId" parameterType="int" resultType="role">
    select * from tb_role where id not in (select roleId from user_role where userId=#{id})
</select>

5.实现添加角色功能

<insert id="addRole" parameterType="userRole">
    insert into user_role (userId,roleId) values (#{userId},#{roleId})
</insert>
@Override
public void add(List<Integer> ids, String userId) {
    for (int roleId:ids){
        UserRole userRole = new UserRole();
        userRole.setUserId(Integer.parseInt(userId));
        userRole.setRoleId(roleId);
        roleDao.addRole(userRole);
    }
}

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值