如果双方都用ehcache作为缓冲库的话,对于cachemanger的设定会产生冲突,因为如果没有给shiro的EhCacheManager设定cachemanager的话,会创建一个默认名称的cachemanager,而spring的cache自动配置也同样会创建一个默认名称的cachemanager,由于ehcache2.5以后,不允许同一个jvm上存在两个同样名字的cachemanager,所以会报错。
解决的方法有两个,一个是自定义配置java文件,把名称改为另外一个,或者干脆就用同一个cachemanager。
下面是用同一个cachemanager时的配置方法。
@Bean(name = "ehcache") public EhCacheManagerFactoryBean ehCacheManagerFactoryBean(){ EhCacheManagerFactoryBean ehCacheManagerFactoryBean = new EhCacheManagerFactoryBean(); ehCacheManagerFactoryBean.setConfigLocation(new ClassPathResource("ehcache.xml")); ehCacheManagerFactoryBean.setShared(true); return ehCacheManagerFactoryBean; } @Bean(name = "cacheManager") public EhCacheCacheManager ehCacheCacheManager(){ EhCacheCacheManager ehCacheCacheManager = new EhCacheCacheManager(); ehCacheCacheManager.setCacheManager(ehCacheManagerFactoryBean().getObject()); return ehCacheCacheManager; } @Bean(name = "ehCacheManager") @DependsOn("lifecycleBeanPostProcessor") public EhCacheManager ehCacheManager(){ EhCacheManager ehCacheManager = new EhCacheManager(); ehCacheManager.setCacheManager(ehCacheManagerFactoryBean().getObject()); return ehCacheManager; }
相关推荐
`shiro-redisson` 模块就是为了解决这个问题,将 Shiro 的缓存(Cache)和会话(Session)管理功能与 Redis 结合,实现了基于 Redis 的分布式解决方案。 1. **Redisson 库的介绍** Redisson 是一个全面的 Redis ...
在整合这些技术时,首先需要在Spring的配置文件中定义bean,包括数据源、SqlSessionFactory(Mybatis的核心)、MapperScannerConfigurer(扫描Mapper接口)等。然后配置SpringMVC的DispatcherServlet,设置视图解析...
Spring Boot 和 Apache Shiro 的整合是企业级应用中常见的权限认证和安全管理方案。Spring Boot 提供了简化 Java 应用程序开发的框架,而 Shiro 是一个轻量级的安全框架,专注于身份验证、授权、会话管理和加密。...
目前无漏洞版本shiro1.9.1源码+jar
在Java Web开发中,特别是使用SSM(Spring、SpringMVC、MyBatis)架构时,Shiro常被用来处理用户认证和授权的问题。下面我们将详细探讨Shiro的核心组件、如何集成到SSM项目中以及Shiro配置的相关知识点。 **1. ...
shiro-all-1.7.1.jar,shiro-aspectj-1.7.1.jar,shiro-cache-1.7.1.jar,shiro-config-core-1.7.1.jar,shiro-config-ogdl-1.7.1.jar,shiro-core-1.7.1.jar,shiro-crypto-cipher-1.7.1.jar,shiro-crypto-core-1.7.1.jar...
- **shiro-spring**: 这个模块使得Shiro能够与Spring框架无缝集成,允许你在Spring配置中定义Shiro的安全设置,同时也可以通过Spring的依赖注入来使用Shiro的组件。 - **shiro-web**: 专门用于Web应用的安全管理,...
<bean id="ehCacheManager" class="org.apache.shiro.cache.ehcache.EhCacheManager"> ``` 接着配置 SecurityManager 使用这个缓存管理器: ```xml <bean id="securityManager" class="org.apache.shiro.web....
通过以上配置,你可以在 Spring 应用中使用 Shiro 进行身份验证和授权管理,同时结合 SpringMVC 处理 Web 请求,并利用 Mybatis 进行数据访问。这样的整合使得应用的安全管理更加简洁高效,也便于与其他 Spring 组件...
总之,Spring MVC和Apache Shiro的结合使得开发人员能够轻松地构建安全且高效的Web应用。"记住我"功能提高了用户体验,而权限缓存则提升了系统的响应速度。通过学习和理解这个示例,开发者可以在自己的项目中灵活...
标题 "springboot整合redis+shiro" 描述的是一个基于Spring Boot的应用程序,该应用程序集成了Redis和Apache Shiro框架,以实现权限管理和用户认证。这个项目还包含了SQL文件,可以方便地部署和运行,但前提是你需要...
当我们需要在Spring Boot应用中实现用户权限控制时,通常会选择将两者进行整合。下面将详细讲解Spring Boot如何与Apache Shiro进行整合,以及在实际应用中可能会遇到的关键知识点。 1. **Shiro简介** Apache Shiro...
在这个“shiro-demo使用ehcache做缓存”的示例中,我们将深入探讨如何结合Apache Shiro和 Ehcache 实现高效的缓存管理。 Ehcache 是一个广泛使用的开源Java缓存解决方案,它提供了内存和磁盘存储,以及对缓存数据的...
**Spring Boot 与 Shiro 结合** Apache Shiro 是一个轻量级的安全框架,适用于身份验证、授权、会话管理和加密。虽然 Spring Security 功能更全面,但 Shiro 的集成相对简单。Spring Boot 集成 Shiro 需要自定义 ...
使用Shiro时,开发者需要定义 Realm 来连接自己的用户数据源,如数据库,然后配置 SecurityManager 并结合其他组件,实现对用户权限的控制。Shiro的轻量级和易用性使其成为许多Java项目中的首选安全框架。
Apache Shiro 是一个强大且易用的 Java 安全框架,它提供了认证、授权、加密以及会话管理功能,能够简化开发人员在构建安全应用程序时的复杂性。本全面教程将帮助你从入门到精通地了解和使用 Shiro。 1. **Shiro ...
<bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean"> /checkLogin.json = anon /** = authc </bean> <!-- 用户授权信息Cache --> ...
本文将深入探讨Spring与Shiro的集成,以及"shirospring"源码中的关键知识点。 首先,我们要理解Spring如何集成Shiro。Spring通过其强大的依赖注入(DI)和AOP(面向切面编程)特性,可以轻松地将Shiro的功能整合到...
class="org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor"> <!-- end --> --修改了过滤链 <!-- 过滤链定义 --> //简单的讲就是把需要特别处理的路径写到前面,越特殊写...