From b62de24aeb80b6d8e1d1b13806062f969297a296 Mon Sep 17 00:00:00 2001 From: xiangwbs Date: Tue, 3 Apr 2018 21:56:00 +0800 Subject: [PATCH] merge --- .../java/com/xwbing/shiro/ShiroConfig.java | 25 +++++++++---------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/boot-web/src/main/java/com/xwbing/shiro/ShiroConfig.java b/boot-web/src/main/java/com/xwbing/shiro/ShiroConfig.java index 9375f71..115498a 100644 --- a/boot-web/src/main/java/com/xwbing/shiro/ShiroConfig.java +++ b/boot-web/src/main/java/com/xwbing/shiro/ShiroConfig.java @@ -14,7 +14,6 @@ import org.crazycake.shiro.RedisManager; import org.crazycake.shiro.RedisSessionDAO; import org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator; import org.springframework.beans.factory.annotation.Value; -import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.web.servlet.FilterRegistrationBean; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -214,7 +213,18 @@ public class ShiroConfig { } /** - * AOP式方法级权限检查 + * 自动创建代理类,若不添加,shiro注解可能不会生效 + */ + @Bean + @DependsOn("lifecycleBeanPostProcessor") + public DefaultAdvisorAutoProxyCreator defaultAdvisorAutoProxyCreator() { + DefaultAdvisorAutoProxyCreator defaultAAP = new DefaultAdvisorAutoProxyCreator(); + defaultAAP.setProxyTargetClass(true); + return defaultAAP; + } + + /** + * 开启shiro注解 * * @param securityManager * @return @@ -225,15 +235,4 @@ public class ShiroConfig { authorizationAttributeSourceAdvisor.setSecurityManager(securityManager); return authorizationAttributeSourceAdvisor; } - - /** - * Spring的一个bean,由Advisor决定对哪些类的方法进行AOP代理。 - */ - @Bean - @ConditionalOnMissingBean - public DefaultAdvisorAutoProxyCreator defaultAdvisorAutoProxyCreator() { - DefaultAdvisorAutoProxyCreator defaultAAP = new DefaultAdvisorAutoProxyCreator(); - defaultAAP.setProxyTargetClass(true); - return defaultAAP; - } }