springMVC拦截器中使用redis查找用户菜单权限列表集合的问题,求大神指教,急急! 5C

我最近在做后台用户权限的功能,登入的用户信息存入redis缓存中,当用户访问菜单时,然后在拦截器中根据用户查找redis获取用户菜单权限的列表,并进行遍历判断是否拥有权限,然后遇到一个问题,用户查找redis获取对象没问题,当获取集合列表的时候就为空 这是怎么回事?

5个回答

注意一下 用户查找redis获取对象没问题,当获取集合列表的时候就为空 是在拦截器中操作

你确认集合放进去了?或者你可以把集合弄成一个逗号分隔的字符串放进去.

redis中是无法储存对象的,你是怎么储存的,序列化了吗,还是什么操作?

在mvc:interceptors标签下声明interceptor主要有两种方式:
(1)直接定义一个Interceptor实现类的bean对象。使用这种方式声明的Interceptor拦截器将会对所有的请求进行拦截。
(2)使用mvc:interceptor标签进行声明。使用这种方式进行声明的Interceptor可以通过mvc:mapping子标签来定义需要进行拦截的请求路径。
经过上述两步之后,定义的拦截器就会发生作用对特定的请求进行拦截了。

在mvc:interceptors标签下声明interceptor主要有两种方式:
(1)直接定义一个Interceptor实现类的bean对象。使用这种方式声明的Interceptor拦截器将会对所有的请求进行拦截。
(2)使用mvc:interceptor标签进行声明。使用这种方式进行声明的Interceptor可以通过mvc:mapping子标签来定义需要进行拦截的请求路径。
经过上述两步之后,定义的拦截器就会发生作用对特定的请求进行拦截了。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
SpringMVC的拦截器问题-(权限)
1.springMVC拦截器实现方式有两种 一种是实现HandlerInterceptor接口,还有一种是继承HandlerInterceptorAdapter,详细操作参考链接如下 springMVC拦截器实现方式 但在实际的使用过程中却会遇到很多问题,平时练习我们只使用java类进行后台测试,但在开发过程中涉及到很多js、css以及图片等静态资源问题。 2.对于静态资源处理,静态资源不...
springMVC中的拦截器的使用
首先先上结构图 接下来是代码. MyController.javapackage com.mi.controller;import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.
springMVC中拦截器的使用
什么是拦截器 Spring web mvc中的拦截器类似于servlet开发中的过滤器FIlter,用于对处理器进行预处理和后处理。 拦截器的使用 实现HandlerInterceptor接口,如下代码 package springmvc.interceptor; import javax.servlet.http.HttpServletRequest; import javax.servlet....
springmvc中拦截器使用
springmvc中拦截器使用 1.contorller中: @RequestMapping("/testinterceptor") public String testinterceptor(HttpServletRequest request){ System.out.println("执行了controller中的testinterceptor方法"); return
SpringMVC中拦截器的使用
SpringMVC中的拦截器(Interceptor)主要是拦截用户的请求并进行相应的处理。今天主要梳理的是权限的验证,判断用户的登陆状态,是否需要认证。         ♦两张小心翼翼的图    1、Interceptor的实现方法        2、对于PreHandle这3个方法:           好了,基础概念就介绍到这里,给大家推荐一个详细解读的博客.点我
急急急!!!求大神指教
我数据库有一个表(user)是这样的[img=https://img-bbs.csdn.net/upload/201704/18/1492514540_312947.png][/img]rnrn我现在列表需要这样展示:[img=https://img-bbs.csdn.net/upload/201704/18/1492514779_539761.png][/img]rn我sql应该怎么去写啊
springMvc拦截器的使用---登录权限的控制
一、applicationContext.xml配置文件配置 <!-- 拦截器的配置 --> <mvc:interceptors> <!-- 使用bean定义一个Interceptor,直接定义在mvc:interceptors根 下面的Interceptor将拦截所有的请求 --> <mvc:interceptor> <...
集合的问题,很纠结,求大神指教
现在做的项目出现了一个很郁闷的问题,我写了个简化的例子重现了出现的问题rn麻烦帮忙看下为什么会出现这个问题,顺便提下解决方案。rn---------------------------------------------------------------rn[code=java]rnpublic class E rn private String fileId;rn public E() rn super();rn rn public E(String fileId) rn this.fileId = fileId;rn rnrn public String getFileId() rn return fileId;rn rnrn public void setFileId(String fileId) rn this.fileId = fileId;rn rn[/code]rn[code=java]rnrnpublic class C rn private String name;rn private String fileId;rn public C() rn super();rn rn public C(String name, String fileId) rn super();rn this.name = name;rn this.fileId = fileId;rn rn public String getName() rn return name;rn rn public void setName(String name) rn this.name = name;rn rn public String getFileId() rn return fileId;rn rn public void setFileId(String fileId) rn this.fileId = fileId;rn rn rn rnrn[/code]rn[code=java]rnimport java.util.ArrayList;rnimport java.util.List;rnpublic class Test rn public static void main(String[] args) rn ListcList=new ArrayList();rn ListcList2=new ArrayList();rn ListeList=new ArrayList();rn E e1=new E("1");rn E e2=new E("2");rn C c1=new C();rn C c2=new C();rn C c3=new C();rn c1.setName("a");rn c2.setName("b");rn c3.setName("c");rn cList.add(c1);rn cList.add(c2);rn cList.add(c3);rn eList.add(e1);rn eList.add(e2);rn for (int i = 0; i < eList.size(); i++) rn E e11=eList.get(i);rn for (int j = 0; j < cList.size(); j++) rn C c11=cList.get(j);rn c11.setFileId(e11.getFileId());rn cList2.add(c11);rn rn rn for (int i = 0; i < cList2.size(); i++) rn System.out.println(cList2.get(i).getName()+"---:--"+cList2.get(i).getFileId());rn rn rnrn[/code]rn结果是rna---:---2rnb---:---2rnc---:---2rna---:---2rnb---:---2rnc---:---2rn我理解中的结果是rna---:---1rnb---:---1rnc---:---1rna---:---2rnb---:---2rnc---:---2rn然后我调试发现 当a=2时 add到集合是 会把a1的fileId变成2rn后面的类推,研究半天没搞明白
nginx负载均衡问题!急急急!!!求大神指教!!!
我的拓扑rn[img=https://img-bbs.csdn.net/upload/201404/09/1397032723_113071.png][/img]rn我的配置rnnginx(192.168.6.1)rnrnvim /usr/local/nginx/conf/nginx.confrnrnrnhttp rnrn #add configrn upstream myserver rn server 192.168.6.11:8880;rn server 192.168.6.111:8888;rn rnrn添加rn include /usr/local/nginx/conf/proxy.conf;rnrnrnvim /usr/local/nginx/conf/proxy.conf rnserver rn listen 80;rn server_name dz.zhangmeng.com;rn root /var/www/dz;rn index index.html index.htm index.php;rn location ~ \.(php)?$ rn proxy_redirect off;rn proxy_hide_header Vary;rn proxy_set_header Accept-Encoding '';rn proxy_set_header Host $host;rn proxy_set_header X-Real-IP $remote_addr;rn proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;rn client_max_body_size 10m;rn client_body_buffer_size 128k;rn proxy_connect_timeout 90;rn proxy_send_timeout 90;rn proxy_read_timeout 90;rn proxy_buffer_size 4k;rn proxy_buffers 32 4k;rn proxy_busy_buffers_size 64k;rn proxy_pass http://myserver;rn rnrnrnserver rn listen 80;rn server_name www.zhangmeng.com;rn location ~ \.(php)?$ rn proxy_pass http://myserver;rn proxy_redirect off;rn proxy_hide_header Vary;rn proxy_set_header Accept-Encoding '';rn proxy_set_header Host $host;rn proxy_set_header X-Real-IP $remote_addr;rn proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;rn client_max_body_size 10m;rn client_body_buffer_size 128k;rn proxy_connect_timeout 90;rn proxy_send_timeout 90;rn proxy_read_timeout 90;rn proxy_buffer_size 4k;rn proxy_buffers 32 4k;rn proxy_busy_buffers_size 64k; //这台虚拟主机做测试用的rn rnrnrn根目录rn[root@redhat5-4-1 conf]# cd /varrn[root@redhat5-4-1 var]# cd www/rn[root@redhat5-4-1 www]# lsrndz zhangmengrn[root@redhat5-4-1 www]# cd zhangmeng/rn[root@redhat5-4-1 zhangmeng]# lsrnindex.htmlrn[root@redhat5-4-1 zhangmeng]# cat index.html rnthis is nginxrn[root@redhat5-4-1 www]# cd dzrn[root@redhat5-4-1 dz]# lsrnindex.htmlrn[root@redhat5-4-1 dz]# cat index.html rnthis is dzrnrnrnrnrnapache+php(192.168.6.11)rnrnvim /etc/httpd/conf/httpd.confrnrn这个是修改的rnListen 8880rnNameVirtualHost *:8880rn添加rninclude /etc/httpd/conf/extra/httpd-vhosts.confrnrnvim /etc/httpd/conf/extra/httpd-vhosts.conf rnrnrn DocumentRoot /var/www/dzrn ServerName dz.zhangmeng.comrn rn Options +Indexes Includes ExecCGI FollowSymLinksrn AllowOverride Allrn Order allow,denyrn Allow from allrn rn ErrorLog logs/dz.zhangmeng.com-error_logrn CustomLog logs/dz.zhangmeng.com-access_log commonrnrnrnrn DocumentRoot /var/www/zhangmengrn ServerName www.zhangmeng.comrn rn Options +Indexes Includes ExecCGI FollowSymLinksrn AllowOverride Allrn Order allow,denyrn Allow from allrn rn ErrorLog logs/www.zhangmeng.com-error_logrn CustomLog logs/www.zhangmeng.com-access_log commonrn //测试用rnrn根目录rn[root@redhat5-4-2 www]# cd dzrn[root@redhat5-4-2 dz]# lsrnadmin.php connect.php forum.php member.php search.php uc_serverrnapi cp.php group.php misc.php source userapp.phprnapi.php crossdomain.xml home.php plugin.php staticrnarchiver data index.php portal.php templaternconfig favicon.ico install robots.txt uc_client //这些是安装php论坛的目录和文件rn[root@redhat5-4-2 dz]# cd ../zhangmeng/rn[root@redhat5-4-2 zhangmeng]# lsrnindex.phprn[root@redhat5-4-2 zhangmeng]# cat index.php rnrn[root@redhat5-4-2 zhangmeng]# rnrnrnrnapache+php(192.168.6.111)rnrnrnvim /etc/httpd/conf/httpd.confrnrn这个是修改的rnListen 8888rnNameVirtualHost *:8888rn添加rninclude /etc/httpd/conf/extra/httpd-vhosts.confrnrnvim /etc/httpd/conf/extra/httpd-vhosts.conf rnrnrn DocumentRoot /var/www/dzrn ServerName dz.zhangmeng.comrn rn Options +Indexes Includes ExecCGI FollowSymLinksrn AllowOverride Allrn Order allow,denyrn Allow from allrn rn ErrorLog logs/dz.zhangmeng.com-error_logrn CustomLog logs/dz.zhangmeng.com-access_log commonrnrnrnrn DocumentRoot /var/www/zhangmengrn ServerName www.zhangmeng.comrn rn Options +Indexes Includes ExecCGI FollowSymLinksrn AllowOverride Allrn Order allow,denyrn Allow from allrn rn ErrorLog logs/www.zhangmeng.com-error_logrn CustomLog logs/www.zhangmeng.com-access_log commonrn //测试用rnrnrn根目录rn[root@redhat5-4-3 www]# cd dzrn[root@redhat5-4-3 dz]# lsrnadmin.php connect.php forum.php member.php search.php uc_serverrnapi cp.php group.php misc.php source userapp.phprnapi.php crossdomain.xml home.php plugin.php staticrnarchiver data index.php portal.php templaternconfig favicon.ico install robots.txt uc_client //这些是安装php论坛的目录和文件rn[root@redhat5-4-3 dz]# cd ../zhangmeng/rn[root@redhat5-4-3 zhangmeng]# lsrnindex.phprn[root@redhat5-4-3 zhangmeng]# cat index.php rnrn[root@redhat5-4-3 zhangmeng]# rnrnrnrn测试rn[root@redhat5-4-4 ~]# curl -I http://www.zhangmeng.comrnHTTP/1.1 200 OKrnServer: nginx/1.5.0rnDate: Wed, 09 Apr 2014 08:53:29 GMTrnContent-Type: text/htmlrnContent-Length: 612rnLast-Modified: Tue, 08 Apr 2014 07:34:32 GMTrnConnection: keep-alivernETag: "5343a688-264"rnAccept-Ranges: bytesrnrn[root@redhat5-4-4 ~]# curl -I http://www.zhangmeng.com/index.phprnHTTP/1.1 200 OKrnServer: nginx/1.5.0rnDate: Wed, 09 Apr 2014 08:53:39 GMTrnContent-Type: text/html; charset=UTF-8rnConnection: keep-alivernX-Powered-By: PHP/5.1.6rnrn进行测试的时候可以成功,但是要安装论坛的时候报错了rn测试rn[img=https://img-bbs.csdn.net/upload/201404/09/1397034196_434070.png][/img]rn[img=https://img-bbs.csdn.net/upload/201404/09/1397034269_243012.png][/img]rn安装论坛的时候报错了,不知道是什么原因,求大神指教rn报错页面rn[img=https://img-bbs.csdn.net/upload/201404/09/1397034390_764962.png][/img]rnrn我在想既然我测试的时候可以成功,为什么安装论坛的时候不可以,求指教!!!!rnrnrn
SpringMVC编写登录权限拦截器
登录拦截器:一个网站总会有页面是需要用户已经登录过才能访问的,比如购物车,个人详情页等等,拦截器可以对访问这些页面的请求做一个拦截,在判断是否存有用户登陆后的cookie或者session之后对其放行或者是重定向到登录页面
基于Springmvc的登录权限拦截器
1.什么是拦截器 拦截器是指通过统一拦截从浏览器发往服务端的请求来完成功能的增强。 使用场景:解决请求的共性问题(如:乱码问题,权限验证问题等) 2.拦截器的基本工作原理 springmvc可以通过配置过滤器来解决乱码问题 拦截器的工作原理和过滤器非常相似 3.实现拦截器 (1)编写拦截器类实现HandlerInterceptor接口 (2)将拦截器注册进Springmvc框架中
SpringMVC中使用Interceptor拦截器
NULL 博文链接:https://panyongzheng.iteye.com/blog/2084629
springMVC中Interceptor拦截器的使用
1.环境配置 首先,这是在所有SSM环境都部署好的情况下操作: 1.在springMVC的配置文件spring-servlet.xml中配置自动扫描的包(为了使用springMVC注解) 2.在web.xml中配置拦截对象      spring      /back/*.do 这里会拦截所有back为前缀,do为后缀的请求 2.前端页面 1.编写ind
拦截器的问题,求大神进!
[img=https://img-bbs.csdn.net/upload/201311/30/1385803580_700360.jpg][/img]rn我的web.xml 是这样写的,这样写会报错,不行的rnrn[img=https://img-bbs.csdn.net/upload/201311/30/1385803573_902633.jpg][/img]rn项目结构rnrn[img=https://img-bbs.csdn.net/upload/201311/30/1385803590_675365.png][/img]rn其他后台的servlet写法rnrnrnrnrnrn我只要实现对admin 里面的jsp全部拦截。rn我那拦截器配置怎么写,大神- -
redis列表、集合
Redis 列表和集合
请大神指教,急急急急!
用存储过程向表中插入20000条数据,但每次调用存储过程得到的结果都是随机插入N条记录,如第一次调用插入1400多条,清除数据第二次执行时插入900多条。请大神看看,赐教!rn表结构rnCREATE TABLE `student` (rn `stu_id` int(11) NOT NULL AUTO_INCREMENT,rn `stu_name` char(30) NOT NULL,rn `stu_sex` char(2) NOT NULL,rn `stu_telephone` char(11) DEFAULT NULL,rn PRIMARY KEY (`stu_id`)rn);rn存储过程为:rn[img=https://img-bbs.csdn.net/upload/201311/20/1384918202_297387.png][/img]
asp.net2.0 用户, 权限,菜单的问题
asp.net初学rn需求其实很简单,有3个角色,有几个菜单,没有2级菜单。rn然后每个用户只有一个角色,用户可以灵活增/删/改。角色不变。rn登陆后根据角色显示菜单。rnrn如果传统直接保存在数据库中确实很简单的,但是客户要求菜单要保存在文件中,权限要用membership。rn我暂时只知道如何把菜单的项目保存在xml文件中。rnrn应该怎么做呢?粗粗查了一下,好像是在web.config里面配置,怎么配置呢? 然后怎么跟菜单联系在一起呢?rnrn初接触vs2005,还真不知道怎么下手。请不要只说概念,越详细越好,代码最好。rn谢了先
SpringMvc拦截器的使用
现象: SpringMvc拦截器的使用方法:1:需要操作前进行拦截器的类 2:需要操作前进行拦截器的方法 3:配置拦截器以及拦截器类 4:拦截器类实现HandlerInterceptorAdapter和重写方法/** * 登录拦截器进行 登录拦截处理 * @author Administrator */ public class CommonInterceptorAuto extend
【SpringMVC】【拦截器的使用】
applicationContext.xml的配置 mvc:interceptors> mvc:interceptor> mvc:mapping path="/user/*"/> bean class="common.interceptor.LoginInterceptor">
springmvc使用拦截器
SpringMVC可以通过拦截器拦截你所需要拦截的request请求,  拦截器也是属于handler mapping的一种机制, 而且拦截器必须实现org.springframework.web.servlet包的HandlerInterceptor接口, 但是为了方便使用, 一般继承HandlerInterceptor的适配器(HandlerInterceptorAdapter)就可以了;
SpringMVC拦截器的使用
这儿使用一个小的案例进行说明:用户登录认证 在控制层中,编写登录控制类 @Controller public class LoginController {   // 登陆 @RequestMapping("/login") public String login(HttpSession session, String username, String password) th
SpringMVC 拦截器使用
对于博客系统,发布文章等其他功能必须登录才能使用。这就非常有必要使用拦截器拦截请求。 SpringMVC中可以通过实现HandlerInterceptor接口定义一个拦截器。当然也可以继承抽象类HandlerInterceptorAdapter。定义一个拦截器AuthorizationInterceptorpublic class AuthorizationInterceptor implemen
使用springmvc的拦截器应用
Spring Web MVC 的处理器拦截器类似于Servlet 开发中的过滤器Filter,用于对处理器进行预处理。 拦截器定义 实现HandlerInterceptor接口,如下:     拦截器配置 针对某种mapping配置拦截器 1 2 3 4 5 6 7 8 9 10 11 ...
SpringMVC拦截器的使用详解
SpringMVC拦截器的使用详解 生活就是这么的悲剧 ,刚写完成的内容没有保存,结果Notepad++ crash 啦 ,我看到之后也crash 了 从头再写一遍,这版会简单很多 ,先写到这。获取个人信息成功,接着写拦截器. 前IBM同事Vincent 做过 一个java web 和 mobile 的w3 授权的项目,我从每天的daily standup 中了解了一些关于w3 授权是一...
SpringMVC拦截器使用总结
 一、简介 SpringMVC的处理器拦截类似于servlet开发中的过滤器Filter,用于对请求进行拦截处理。拦截器是基于SpringAOP实现的,它是AOP编程思想的典型应用。 二、常见应用场景 权限检验:检测请求是否具有登录权限,如果没有直接返回登录页面。 性能监控:用请求处理前和请求处理后的时间差计算整个请求相应完成所消耗的时间。 日志记录:记录请求信息的日志,以便进行信息监控...
springmvc(八)---拦截器的使用
一、拦截器如何应用? 比如:统一日志处理拦截器,需要该拦截器preHandle一定要放行,且将它放在拦截器链接中第一个位置。比如:登陆认证拦截器,放在拦截器链接中第一个位置。权限校验拦截器,放在登陆认证拦截器之后。(因为登陆通过后才校验权限) 二、拦截器应用于登录拦截 1、pojo类 package top.einino.pojo; public class User { privat
SpringMVC(十六)_使用拦截器
       前言:本篇主要介绍SpringMVC的拦截器机制。  1. 自定义拦截器        Spring MVC可以使用拦截器对请求进行拦截处理,用户可以自定义拦截器来实现特定的功能,自定义的拦截器必须实现HandlerInterceptor接口。 public interface HandlerInterceptor { /** * 这个方法在业务处...
springmvc拦截器的配置与使用
实现HandlerInterceptor接口,如下: PublicclassHandlerInterceptor1 implementsHandlerInterceptor{ /** * controller执行前调用此方法 * 返回true表示继续执行,返回false中止执行 * 这里可以加入登录校验、权限拦截等 */ @Override Publicboolea...
SpringMvc之拦截器的使用
1.什么是拦截器 拦截器拦截请求,主要在权限登录的使用,那么SpringMvc的拦截器应该怎么使用呢 Spring Web MVC 的处理器拦截器类似于Servlet 开发中的过滤器Filter,用于对处理器进行预处理和后处理。但它俩是不一样的,在我以前的博客上写着它们的区别。 登录验证的例子 1、有一个登录页面,需要写一个controller访问页面 2、登录页面有一提交表单的动作。需要在con...
springmvc拦截器的使用
定义一个拦截类 package com.xiaoxin.demo.interceptor; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.HandlerInterceptor;
SpringMVC拦截器的使用。
1.编写拦截器类,此类实现HandlerInterceptor接口。拦截器只能对action请求起作用。 import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.HandlerInterce...
springMVC拦截器使用
1.页面设置.html<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+reques
springmvc的拦截器
拦截器 public class LoginInterceptor implements HandlerInterceptor {     @Override     public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)             th...
SpringMVC使用拦截器步骤
[color=olive]applicationContext.xml[/color] [code=&quot;xml&quot;] [/code] [color=olive]interceptor代码:[/color] [code=&quot;java&quot;]public class MyInterceptor implements HandlerInterce...
springmvc的拦截器使用
如何spring拦截器使用
springMVC拦截器执行过程和使用
1.拦截器: 用于对handle进行预处理和后处理 2.执行过程 在org.springframework.web.servlet.DispatcherServlet#doDispatch中:HandlerExecutionChain mappedHandler = null; //首先获取HandlerExecutionChain(handle和拦截器) // Determine h
SpringMVC的拦截器的使用
对所有的请求进行拦截,如果没有登录就返回到登录页面,简单的SpringMVC的拦截器的使用案例1、继承HandlerInterceptor的登录拦截器import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSes
springmvc拦截器的使用(分页)
1.首先在spring-mvc.xml文件配置拦截器。 <!-- 拦截器 --> mvc:interceptors> mvc:interceptor> mvc:mapping path="/autotest/**"/> //路径是你要拦截的请求的路径(一般为控制层) bean class="com.bee.data.auto.test.web.
SpringMVC使用拦截器
项目需要拦截器拦截所有App端的请求,获取请求中的头文件信息并判断 1.首先实现SpringMVC中的 HandlerInterceptor接口,并实现其方法 public class AppInterceptor implements HandlerInterceptor { public final static String EnsoKey="Wangke"; @Override
VS中的棘手问题,求大神指教,急急急!!
无法启动程序c:\users\xt\documents\visual studio 2013\Projects\ConsoleApplication3\Debug\ConsoleApplication3.exe拒绝访问,这是怎么回事,但按control + f5,仍可以运行出结果,但结果不对,之前还好好的,怎么现在一个程序都跑不出来,只要按F5,就弹出这个警告,求大神帮帮我!
相关热词 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池 c#5.0 安装程序 c# 分页算法